public override void ExitConstructor([NotNull] XSharpParser.ConstructorContext context) { if (context.Modifiers?.EXTERN().Length > 0) { if (context.StmtBlk?._Stmts?.Count > 0) { _parseErrors.Add(new ParseErrorData(context.StmtBlk, ErrorCode.ERR_ExternHasBody, "Constructor")); } } if (context.isInInterface()) { _parseErrors.Add(new ParseErrorData(context.c1, ErrorCode.ERR_InterfacesCantContainConstructors)); } }
public override void EnterConstructor([NotNull] XSharpParser.ConstructorContext context) { var tokens = context.Modifiers?._Tokens; XTypeMember newMethod = new XTypeMember("Constructor", Kind.Constructor, decodeModifiers(tokens), decodeVisibility(tokens), new TextRange(context), new TextInterval(context), isStatic(tokens)); // addParameters(context.Params, newMethod); addMember(newMethod); }
public override void EnterConstructor([NotNull] XSharpParser.ConstructorContext context) { var ctor = new XCodeConstructor(); writeTrivia(ctor, context); ctor.Attributes = MemberAttributes.Public; ctor.Parameters.AddRange(GetParametersList(context.ParamList)); if (context.Modifiers != null) { ctor.Attributes = ContextToConstructorModifiers(context.Modifiers); } FillCodeDomDesignerData(ctor, context.Start.Line, context.Start.Column); SaveSourceCode(ctor, context); // write original source for the attributes AddMemberAttributes(ctor, ctor.Attributes, context.Modifiers); this.CurrentType.Members.Add(ctor); }
public override void EnterConstructor([NotNull] XSharpParser.ConstructorContext context) { var ctor = new XCodeConstructor(); writeTrivia(ctor, context); FillCodeDomDesignerData(ctor, context.Start.Line, context.Start.Column); ctor.Attributes = MemberAttributes.Public; ctor.Parameters.AddRange(GetParametersList(context.ParamList)); // if (context.Modifiers != null) { // Get standard Visibilities ctor.Attributes = ContextToConstructorModifiers(context.Modifiers); if (context.Modifiers.STATIC().Length > 0) { ctor.Attributes |= MemberAttributes.Static; } } FillCodeSource(ctor, context, _tokens); this.CurrentClass.Members.Add(ctor); }
public override void EnterConstructor([NotNull] XSharpParser.ConstructorContext context) => AddMethodInfo("Constructor", GetClassName(context), MethodInfoType.Constructor, context.statementBlock());
public override void ExitConstructor([NotNull] XSharpParser.ConstructorContext context) { endMember(context); }