protected virtual bool TryInvokeStaticMember( InvokeMemberBinder binder, object[] args, out object result )
{
MethodInfo method = GetType().GetMethod( binder.Name, DefaultBindingFlags );
if ( method != null )
{
result = method.Invoke( null, args );
return true;
}
foreach ( DynamicObject prototype in Modules.OfType<DynamicObject>() )
{
if ( prototype.TryInvokeMember( binder, args, out result ) )
{
return true;
}
}
result = null;
return false;
}