private ProcedureNode GetNode(VBAParser.FunctionStmtContext context) { if (context == null) { return(null); } var scope = QualifiedName.ToString(); var localScope = scope + "." + context.ambiguousIdentifier().GetText(); return(new ProcedureNode(context, scope, localScope)); }
public static string Signature(this VBAParser.FunctionStmtContext context) { var visibility = context.visibility(); var visibilityText = visibility == null ? string.Empty : visibility.GetText(); var identifierText = context.ambiguousIdentifier().GetText(); var argsText = context.argList().GetText(); var asType = context.asTypeClause(); var asTypeText = asType == null ? string.Empty : asType.GetText(); return((visibilityText + ' ' + Tokens.Function + ' ' + identifierText + argsText + ' ' + asTypeText).Trim()); }
public override void EnterFunctionStmt(VBAParser.FunctionStmtContext context) { var accessibility = GetProcedureAccessibility(context.visibility()); var name = context.ambiguousIdentifier().GetText(); var asTypeClause = context.asTypeClause(); var asTypeName = asTypeClause == null ? Tokens.Variant : asTypeClause.type().GetText(); var declaration = CreateDeclaration(name, asTypeName, accessibility, DeclarationType.Function, context, context.ambiguousIdentifier().GetSelection()); _declarations.Add(declaration); SetCurrentScope(name); }
public ProcedureNode(VBAParser.FunctionStmtContext context, string scope, string localScope) : this(context, scope, localScope, VBProcedureKind.Function, context.visibility(), context.ambiguousIdentifier(), () => context.asTypeClause()) { _argsListContext = context.argList(); _staticNode = context.STATIC(); _keyword = context.FUNCTION(); _asTypeClauseContext = context.asTypeClause(); }
public override void EnterFunctionStmt(VBAParser.FunctionStmtContext context) { SetCurrentScope(context.ambiguousIdentifier().GetText(), DeclarationType.Function); }
public override void EnterFunctionStmt(VBAParser.FunctionStmtContext context) { _resolver.SetCurrentScope(context.ambiguousIdentifier().GetText()); }
public override void EnterFunctionStmt(VBAParser.FunctionStmtContext context) { _currentMember = new QualifiedMemberName(_qualifiedName, context.ambiguousIdentifier().GetText()); }