GenerateInternalCallMethod() private static method

private static GenerateInternalCallMethod ( Mono.Cecil.TypeDefinition typeDefinition, Mono.Cecil.MethodDefinition method, TextWriter output ) : void
typeDefinition Mono.Cecil.TypeDefinition
method Mono.Cecil.MethodDefinition
output System.IO.TextWriter
return void
 private static void GenerateRegisterInternalCallsForTypes(IEnumerable <TypeDefinition> types, TextWriter output)
 {
     foreach (TypeDefinition current in types)
     {
         foreach (MethodDefinition current2 in current.Methods)
         {
             MonoAOTRegistration.GenerateInternalCallMethod(current, current2, output);
         }
         MonoAOTRegistration.GenerateRegisterInternalCallsForTypes(current.NestedTypes, output);
     }
 }
 private static void GenerateRegisterInternalCallsForTypes(IEnumerable <TypeDefinition> types, TextWriter output)
 {
     foreach (TypeDefinition current in types)
     {
         using (Collection <MethodDefinition> .Enumerator enumerator2 = current.get_Methods().GetEnumerator())
         {
             while (enumerator2.MoveNext())
             {
                 MethodDefinition current2 = enumerator2.get_Current();
                 MonoAOTRegistration.GenerateInternalCallMethod(current, current2, output);
             }
         }
         MonoAOTRegistration.GenerateRegisterInternalCallsForTypes(current.get_NestedTypes(), output);
     }
 }
 public static void GenerateRegisterInternalCalls(AssemblyDefinition[] assemblies, TextWriter output)
 {
     output.Write("void RegisterAllStrippedInternalCalls ()\n{\n");
     for (int i = 0; i < assemblies.Length; i++)
     {
         AssemblyDefinition assemblyDefinition = assemblies[i];
         foreach (TypeDefinition current in assemblyDefinition.MainModule.Types)
         {
             foreach (MethodDefinition current2 in current.Methods)
             {
                 MonoAOTRegistration.GenerateInternalCallMethod(current, current2, output);
             }
         }
     }
     output.Write("\n}\n");
 }
 private static void GenerateRegisterInternalCallsForTypes(IEnumerable <TypeDefinition> types, TextWriter output)
 {
     using (IEnumerator <TypeDefinition> enumerator1 = types.GetEnumerator())
     {
         while (((IEnumerator)enumerator1).MoveNext())
         {
             TypeDefinition current1 = enumerator1.Current;
             using (Collection <MethodDefinition> .Enumerator enumerator2 = current1.get_Methods().GetEnumerator())
             {
                 // ISSUE: explicit reference operation
                 while (((Collection <MethodDefinition> .Enumerator)@enumerator2).MoveNext())
                 {
                     // ISSUE: explicit reference operation
                     MethodDefinition current2 = ((Collection <MethodDefinition> .Enumerator)@enumerator2).get_Current();
                     MonoAOTRegistration.GenerateInternalCallMethod(current1, current2, output);
                 }
             }
             MonoAOTRegistration.GenerateRegisterInternalCallsForTypes((IEnumerable <TypeDefinition>)current1.get_NestedTypes(), output);
         }
     }
 }