Beispiel #1
0
        public IFieldBuilder DeclareField(IFieldSignatureTemplate Template)
        {
            var fieldDef = new LLVMField(
                this,
                Template,
                Template.IsStatic ? -1 : fieldCounter);

            if (fieldDef.IsStatic)
            {
                declaredStaticFields.Add(fieldDef);
            }
            else
            {
                declaredInstanceFields.Add(fieldDef);
                fieldCounter++;
            }

            declaredFields.Add(fieldDef);
            return(fieldDef);
        }
Beispiel #2
0
 public LLVMField(LLVMType DeclaringType, IFieldSignatureTemplate Template, int FieldIndex)
     : base(DeclaringType)
 {
     this.templateInstance = new FieldSignatureInstance(Template, this);
     this.FieldIndex       = FieldIndex;
 }