O'Reilly logo

C# in a Nutshell by Peter Drayton, Ted Neward, Ben Albahari

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Name

ModuleBuilder

Synopsis

This class represents a dynamically created module inside a dynamic assembly. Dynamic modules are created with the AssemblyBuilder.DefineDynamicModule() method. A dynamic module can be either transient or persistable, which means you can save it to disk as part of a PE file. To create a persistable module, use a version of the AssemblyBuilder.DefineDynamicModule() method that allows you to specify a filename.

You can use the methods that begin with Define to create types, managed and unmanaged resources, global methods, and PInvoke (global native) methods.

public class ModuleBuilder : System.Reflection.Module {
// Public Instance Properties
   public override field string FullyQualifiedName{get; }        // overrides System.Reflection.Module
                  // Public Instance Methods
   public method void CreateGlobalFunctions();  
   public method ISymbolDocumentWriter DefineDocument(
        string url, Guid language, Guid languageVendor, 
        Guid documentType);  
   public method EnumBuilder DefineEnum(string name, 
        System.Reflection.TypeAttributes visibility, 
        Type underlyingType);  
   public method MethodBuilder DefineGlobalMethod(string name, 
        System.Reflection.MethodAttributes attributes, 
        System.Reflection.CallingConventions callingConvention, 
        Type returnType, Type[] parameterTypes);  
   public method MethodBuilder DefineGlobalMethod(string name, 
        System.Reflection.MethodAttributes attributes, 
        Type returnType, Type[] parameterTypes);  
   public method FieldBuilder DefineInitializedData(
        string name, byte[] data ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required