public InterConstructor(ArgumentSymbol[] args, InterType owner, List <string> flags, bool callThis) : base(".ctor", args, owner, flags) { AddFlag("instance"); _callThis = callThis; ReturnType = new InterUserType(owner); }
public InterMethod(string name, TypeName returnTypeName, ArgumentSymbol[] args, InterType owner, List <string> flags) { Name = name; ReturnTypeName = returnTypeName; Arguments = args; Owner = owner; foreach (string flag in flags) { AddFlag(flag); } if (IsInstance) { foreach (var arg in args) { arg.Index++; } ThisPointer = new ArgumentSymbol("this", new InterUserType(owner), 0); } }
public InterConstructor(InterType owner) : this(new ArgumentSymbol[] { }, owner, new List <string>(), false) { }
public InterMethodSpecialName(string name, ArgumentSymbol[] args, InterType owner, List <string> flags) : base(name, new BasicTypeName("void"), args, owner, flags) { AddFlag("rtspecialname"); AddFlag("specialname"); }
public InterInitializer(InterType owner, List <string> flags) : base(".cctor", new ArgumentSymbol[] { }, owner, flags) { AddFlag("static"); ReturnType = new InterUserType(owner); }