当前位置: 首页>>代码示例>>C#>>正文


C# VBAParser.ambiguousIdentifier方法代码示例

本文整理汇总了C#中VBAParser.ambiguousIdentifier方法的典型用法代码示例。如果您正苦于以下问题:C# VBAParser.ambiguousIdentifier方法的具体用法?C# VBAParser.ambiguousIdentifier怎么用?C# VBAParser.ambiguousIdentifier使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在VBAParser的用法示例。


在下文中一共展示了VBAParser.ambiguousIdentifier方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ProcedureNode

 public ProcedureNode(VBAParser.SubStmtContext context, string scope, string localScope)
     : this(context, scope, localScope, VBProcedureKind.Sub, context.visibility(), context.ambiguousIdentifier(), null)
 {
     _argsListContext = context.argList();
     _staticNode = context.STATIC();
     _keyword = context.SUB();
 }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:7,代码来源:ProcedureNode.cs

示例2: GetNode

        private ProcedureNode GetNode(VBAParser.PropertyGetStmtContext context)
        {
            if (context == null)
            {
                return null;
            }

            var scope = Selection.QualifiedName.ToString();
            var localScope = scope + "." + context.ambiguousIdentifier().GetText();
            return new ProcedureNode(context, scope, localScope);
        }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:11,代码来源:ImplicitVariantReturnTypeInspectionResult.cs

示例3: DeclareExplicitVariant

        private string DeclareExplicitVariant(VBAParser.ConstSubStmtContext context, out string instruction)
        {
            if (context == null)
            {
                instruction = null;
                return null;
            }

            var parent = (VBAParser.ConstStmtContext) context.Parent;
            instruction = parent.GetText();

            var constant = context.GetText();
            var replacement = context.ambiguousIdentifier().GetText() + ' '
                         + Tokens.As + ' ' + Tokens.Variant + ' '
                         + context.EQ().GetText() + ' '
                         + context.valueStmt().GetText();

            var result = instruction.Replace(constant, replacement);
            return result;
        }
开发者ID:ThunderFrame,项目名称:Rubberduck,代码行数:20,代码来源:VariableTypeNotDeclaredInspectionResult.cs

示例4: EnterDeclareStmt

        public override void EnterDeclareStmt(VBAParser.DeclareStmtContext context)
        {
            var accessibility = GetMemberAccessibility(context.visibility());
            var nameContext = context.ambiguousIdentifier();
            if (nameContext == null)
            {
                return;
            }
            var name = nameContext.GetText();

            var hasReturnType = context.FUNCTION() != null;

            var asTypeClause = context.asTypeClause();
            var asTypeName = hasReturnType
                                ? asTypeClause == null
                                    ? Tokens.Variant
                                    : asTypeClause.type().GetText()
                                : null;

            var selection = nameContext.GetSelection();

            var declarationType = hasReturnType
                ? DeclarationType.LibraryFunction
                : DeclarationType.LibraryProcedure;

            var declaration = CreateDeclaration(name, asTypeName, accessibility, declarationType, context, selection);

            OnNewDeclaration(declaration);
            SetCurrentScope(declaration, name); // treat like a procedure block, to correctly scope parameters.
        }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:30,代码来源:DeclarationSymbolsListener.cs

示例5: EnterTypeStmt

 public override void EnterTypeStmt(VBAParser.TypeStmtContext context)
 {
     SetCurrentScope(context.ambiguousIdentifier().GetText(), DeclarationType.UserDefinedType);
 }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:4,代码来源:IdentifierReferenceListener.cs

示例6: EnterEnumerationStmt_Constant

 public override void EnterEnumerationStmt_Constant(VBAParser.EnumerationStmt_ConstantContext context)
 {
     OnNewDeclaration(CreateDeclaration(context.ambiguousIdentifier().GetText(), null, Accessibility.Implicit, DeclarationType.EnumerationMember, context, context.ambiguousIdentifier().GetSelection()));
 }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:4,代码来源:DeclarationSymbolsListener.cs

示例7: EnterTypeStmt_Element

        public override void EnterTypeStmt_Element(VBAParser.TypeStmt_ElementContext context)
        {
            var asTypeClause = context.asTypeClause();
            var asTypeName = asTypeClause == null
                ? Tokens.Variant
                : asTypeClause.type().GetText();

            OnNewDeclaration(CreateDeclaration(context.ambiguousIdentifier().GetText(), asTypeName, Accessibility.Implicit, DeclarationType.UserDefinedTypeMember, context, context.ambiguousIdentifier().GetSelection()));
        }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:9,代码来源:DeclarationSymbolsListener.cs

示例8: EnterEnumerationStmt

        public override void EnterEnumerationStmt(VBAParser.EnumerationStmtContext context)
        {
            var accessibility = GetMemberAccessibility(context.visibility());
            var identifier = context.ambiguousIdentifier();
            if (identifier == null)
            {
                return;
            }
            var name = identifier.GetText();

            var declaration = CreateDeclaration(name, null, accessibility, DeclarationType.Enumeration, context, context.ambiguousIdentifier().GetSelection());

            OnNewDeclaration(declaration);
            _parentDeclaration = declaration; // treat members as child declarations, but keep them scoped to module
        }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:15,代码来源:DeclarationSymbolsListener.cs

示例9: EnterPropertySetStmt

 public override void EnterPropertySetStmt(VBAParser.PropertySetStmtContext context)
 {
     _currentScopeAttributes = new Attributes();
     _currentScope = Tuple.Create(context.ambiguousIdentifier().GetText(), DeclarationType.PropertySet);
 }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:5,代码来源:AttributeParser.cs

示例10: EnterEnumerationStmt

 public override void EnterEnumerationStmt(VBAParser.EnumerationStmtContext context)
 {
     SetCurrentScope(context.ambiguousIdentifier().GetText(), DeclarationType.Enumeration);
 }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:4,代码来源:IdentifierReferenceListener.cs

示例11: EnterFunctionStmt

        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);
        }
开发者ID:ThunderFrame,项目名称:Rubberduck,代码行数:14,代码来源:DeclarationSymbolsListener.cs

示例12: EnterFunctionStmt

 public override void EnterFunctionStmt(VBAParser.FunctionStmtContext context)
 {
     _resolver.SetCurrentScope(context.ambiguousIdentifier().GetText());
 }
开发者ID:ThunderFrame,项目名称:Rubberduck,代码行数:4,代码来源:IdentifierReferenceListener.cs

示例13: EnterEventStmt

        public override void EnterEventStmt(VBAParser.EventStmtContext context)
        {
            var accessibility = GetMemberAccessibility(context.visibility());
            var identifier = context.ambiguousIdentifier();
            if (identifier == null)
            {
                return;
            }
            var name = identifier.GetText();

            var declaration = CreateDeclaration(name, null, accessibility, DeclarationType.Event, context, context.ambiguousIdentifier().GetSelection());

            OnNewDeclaration(declaration);
            SetCurrentScope(declaration, name);
        }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:15,代码来源:DeclarationSymbolsListener.cs

示例14: EnterPropertyGetStmt

        public override void EnterPropertyGetStmt(VBAParser.PropertyGetStmtContext context)
        {
            var accessibility = GetProcedureAccessibility(context.visibility());
            var identifier = context.ambiguousIdentifier();
            if (identifier == null)
            {
                return;
            }
            var name = identifier.GetText();

            var asTypeClause = context.asTypeClause();
            var asTypeName = asTypeClause == null
                ? Tokens.Variant
                : asTypeClause.type().GetText();

            var declaration = CreateDeclaration(name, asTypeName, accessibility, DeclarationType.PropertyGet, context, context.ambiguousIdentifier().GetSelection());

            OnNewDeclaration(declaration);
            SetCurrentScope(declaration, name);
        }
开发者ID:retailcoder,项目名称:Rubberduck,代码行数:20,代码来源:DeclarationSymbolsListener.cs

示例15: EnterEnumerationStmt

        public override void EnterEnumerationStmt(VBAParser.EnumerationStmtContext context)
        {
            var accessibility = GetMemberAccessibility(context.visibility());
            var name = context.ambiguousIdentifier().GetText();

            _declarations.Add(CreateDeclaration(name, null, accessibility, DeclarationType.Enumeration, context, context.ambiguousIdentifier().GetSelection()));
            //SetCurrentScope(name);
        }
开发者ID:ThunderFrame,项目名称:Rubberduck,代码行数:8,代码来源:DeclarationSymbolsListener.cs


注:本文中的VBAParser.ambiguousIdentifier方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。