Author |
Topic |
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - Nov 11 2013 : 05:05:48 AM
|
It would be fine to have similar options as in Reflector's Analyze tool. Particulary: Assigned By, Exposed By, Used By, Instantiated By
Exposed By - All instances, where symbol is exposed (i.e. used as argument of exposed method, used as property value, etc.) Instantiated By - All intances of symbol, where it is created new instance of it. Assigned By - All instances, where instance of symbol is assigned Used By - All other instances, where symbol is used (and does not fall into previous groups).
|
Edited by - Dusan on Nov 11 2013 05:15:17 AM |
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Nov 27 2013 : 10:48:39 AM
|
An interesting idea, I have put in a feature request to see what our developers make of this:
case=78686 |
zen is the art of being at one with the two'ness |
|
|
foxmuldr
Tomato Guru
USA
416 Posts |
Posted - Nov 27 2013 : 12:18:43 PM
|
How many people work on VAX? |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Nov 27 2013 : 6:19:12 PM
|
We are a relatively small company, but very focussed, and hopefully effective. |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - Nov 28 2013 : 02:48:14 AM
|
In addition to this:
Current Find references supports switch "Display overriden and inherited references".
What is missing is a way to search ONLY for those. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Nov 28 2013 : 1:10:52 PM
|
If you are asking VA to show ONLY overridden and inherited references then you are actually asking VA to remove all references of the function you triggered Find References on. Or am I misunderstanding?
From a support point of view, telling VA to return zero references to the item you just just did a Find References on is a problem just waiting to happen
What are you trying to achieve here? |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - Nov 29 2013 : 05:56:05 AM
|
What you wrote is true for overriden methods, but not inherited classes.
Lets say you have a base class: class foo_base { virtual ~foo_base() {} };
And somewhere in code you have some classes derived from it: class foo_1 : public foo_base {...} class foo_2 : public foo_base {...} class foo_2 : public foo_base {...} class foo_2 : public foo_base {...}
each in some different header file or cpp file.
Now, if you like to get ONLY a list of all classes that inherits from foo_base, you can not. It lists also all instances to foo_base:
// not wanted references void use_foo(foo_base * foo) { ... } foo_base * get_foo(...); //
And so on...
|
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Dec 09 2013 : 6:10:05 PM
|
Are you trying to understand the class hierarchy, so you only want the declarations of the derived classes? Or are you trying to find all references to the derived classes in your code base?
I can see that Find References is not helping in either case, but this is a slightly different task than the one Find References is designed for. |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - Dec 10 2013 : 03:27:48 AM
|
> Are you trying to find all references to the derived classes in your code base? Yes. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Dec 10 2013 : 7:38:58 PM
|
Once you know which classes are derived from the base class, you can run individual Find References on each of those classes, and clone the Find References Results window as you go, allowing you to keep all of the results open at once, along side each other.
Why are you after this particular find? It seems a very specific request, but I am not initially sure why this is helpful, and I am not sure how much use it would get in general. |
zen is the art of being at one with the two'ness |
|
|
Dusan
Whole Tomato Software
Slovakia
177 Posts |
Posted - Dec 11 2013 : 01:55:44 AM
|
quote: Originally posted by feline
Once you know which classes are derived from the base class, you can run individual Find References on each of those classes, and clone the Find References Results window as you go, allowing you to keep all of the results open at once, along side each other.
But my goal is to list all derived classes while I do not like to go and manually open each file in solution that contains classes derived from my abstract class.
quote: Originally posted by feline Why are you after this particular find? It seems a very specific request, but I am not initially sure why this is helpful, and I am not sure how much use it would get in general.
My C++ libraries must be generic, so I use many abstract classes with all pure virtual methods and time to time I have to add or remove some method(s) from the abstract class. However that means, that also I need to modify all derived classes and sometimes I need to change logic of related code to those classes. It is currently not as trivial operation, so I must use compiler errors to find all classes derived from abstract one. |
|
|
feline
Whole Tomato Software
United Kingdom
19022 Posts |
Posted - Dec 23 2013 : 12:50:12 PM
|
Apologies for the slow reply.
If I understand correctly, you actually want to find just the derived classes then, so effectively you are trying to use Find References to explore the class hierarchy. Is this right?
This is something we are looking into doing at some point, since exploring this is often useful:
case=79187 |
zen is the art of being at one with the two'ness |
|
|
sean
Whole Tomato Software
USA
2817 Posts |
Posted - May 23 2014 : 3:05:07 PM
|
A new case was opened for filtering of Find References results: case=78686. case=78686 is implemented in build 2036. See the context menu for filtering commands and keyboard shortcuts. |
|
|
|
Topic |
|