public ITypeBuilder DeclareType(ITypeSignatureTemplate Template)
        {
            var childType = new LLVMType(this, Template);

            declaredTypes.Add(childType);
            return(childType);
        }
Exemple #2
0
 public LLVMType(LLVMNamespace Namespace, ITypeSignatureTemplate Template)
 {
     this.Namespace              = Namespace;
     this.templateInstance       = new TypeSignatureInstance(Template, this);
     this.attrMap                = new AttributeMapBuilder();
     this.declaredMethods        = new List <LLVMMethod>();
     this.declaredStaticCtors    = new List <LLVMMethod>();
     this.declaredInstanceFields = new List <LLVMField>();
     this.declaredStaticFields   = new List <LLVMField>();
     this.declaredFields         = new List <LLVMField>();
     this.fieldCounter           = 0;
     this.declaredProperties     = new List <LLVMProperty>();
     this.RelativeVTable         = new VTableSlots();
 }