public DynamicTypeBuilder(IEnumerable <DynamicMember> dynamicMembers = null, AssemblyBuilderFactory assemblyBuilderFactory = null)
        {
            this._dynamicMembers = new ObservableCollection <DynamicMember>();
            this._dynamicMembers.CollectionChanged += DynamicMembers_CollectionChanged;
            this.DynamicMembers = new ReadOnlyCollection <DynamicMember>(this._dynamicMembers);

            this._conventions = new List <DynamicTypeConvention>();
            this.Conventions  = new ReadOnlyCollection <DynamicTypeConvention>(this._conventions);

            this._interceptors = new List <ITypeDeclarationInterceptor>();
            this.Interceptors  = new ReadOnlyCollection <ITypeDeclarationInterceptor>(this._interceptors);

            if (dynamicMembers != null)
            {
                dynamicMembers.ToList().ForEach(p => this._dynamicMembers.Add(p));
            }

            if (assemblyBuilderFactory == null)
            {
                this.AssemblyBuilderFactory = new DynamicAssemblyBuilderFactory();
            }
            else
            {
                this.AssemblyBuilderFactory = assemblyBuilderFactory;
            }

            AddDefaultConventions();
        }
Beispiel #2
0
 public DynamicTypeBuilder(IEnumerable <DynamicMember> dynamicMembers = null, AssemblyBuilderFactory assemblyBuilderFactory = null)
     : base(dynamicMembers, assemblyBuilderFactory)
 {
 }