public override void OnMethod(Method method)
{
if (WasVisited(method)) return;
MarkVisited(method);
Visit(method.Attributes);
Visit(method.Parameters);
Visit(method.ReturnType);
Visit(method.ReturnTypeAttributes);
bool ispinvoke = GetEntity(method).IsPInvoke;
if (method.IsRuntime || ispinvoke)
{
CheckRuntimeMethod(method);
if (ispinvoke)
{
method.Modifiers |= TypeMemberModifiers.Static;
}
}
else
{
try
{
PushMember(method);
ProcessRegularMethod(method);
}
finally
{
PopMember();
}
}
}