Esempio n. 1
0
 static public MethodDefinition GetStaticConstructor(this TypeDefinition item)
 {
     return(item.GetMethods()
            .FindFirst(m =>
                       m.Name == ".cctor" &&
                       m.IsSpecialName == true &&
                       m.IsRuntimeSpecialName == true &&
                       m.Attributes.HasTheFlag(MethodAttributes.Private) &&
                       m.Attributes.HasTheFlag(MethodAttributes.Static)
                       )
            ??
            item.AddEmptyMethod(
                new MethodDefinition(
                    ".cctor",
                    MethodAttributes.Static | MethodAttributes.Private | MethodAttributes.SpecialName | MethodAttributes.RTSpecialName | MethodAttributes.HideBySig,
                    item.GetTypeSystem().Void
                    )
                ));
 }