48 Load(redirect, element);
60 redirect.Class = (string)element.Attribute(
"class");
61 redirect.Name = (string)element.Attribute(
"name");
62 redirect.Sig = (string)element.Attribute(
"sig");
63 redirect.Type = (string)element.Attribute(
"type");
66 public string Class {
get;
set; }
68 public string Name {
get;
set; }
70 public string Sig {
get;
set; }
72 public string Type {
get;
set; }
76 if (Type ==
null && Class ==
null)
77 throw new NotImplementedException();
78 if (
Name ==
null ||
Sig ==
null)
79 throw new NotImplementedException();
81 var redirParamTypes = loader.ArgTypeListFromSig(
Sig);
82 for (
int i = 0; i < redirParamTypes.Length; i++)
88 var type = loader.
Context.
Resolver.ResolveCoreType(Type).AsReflection();
89 var mi = type.GetMethod(
Name, redirParamTypes);
92 throw new InvalidOperationException();
94 ilgen.Emit(OpCodes.Call, mi);
98 var tw = loader.LoadClassByName(
Class);
99 var mw = tw.GetMethod(
Name,
Sig,
false);
102 throw new InvalidOperationException();
109 ilgen.Emit(OpCodes.Ret);
ISymbolResolver Resolver
Gets the ISymbolResolver associated with this instance of the runtime.