Finding the Base Class of a Function with Phoenix
This came up on an internal alias today, so I thought I would post the solution.
The issue is when there is some code like the following:
class BaseClass
{
}
class InheritedClass : BaseClass
{
void SomeFunction() { }
}
And you have a pointer to the SomeFunction function unit, how do you find out the associated base class of that function (in this case it is BaseClass).
The answer is:
functionSymbol.EnclosingAggregateType.PrimaryBaseAggregateType
Comments
Anonymous
October 08, 2007
PingBack from http://www.artofbam.com/wordpress/?p=6266Anonymous
October 10, 2007
Naming them FunctionSymbol.DeclaringType.BaseType too concise?Anonymous
October 26, 2007
Yes, yes. We know that some things are a bit more verbose than they should be.