public override void EnterModeSpec([NotNull] AbstractGrammarParser.ModeSpecContext context)
            {
                string modeName = context.id() != null?context.id().GetText() : null;

                if (string.IsNullOrEmpty(modeName))
                {
                    modeName = "?";
                }

                _mode.Push(modeName);
            }
Beispiel #2
0
            public override void EnterModeSpec([NotNull] AbstractGrammarParser.ModeSpecContext context)
            {
                string hint;

                if (context.id() != null)
                {
                    hint = "mode " + context.id().GetText() + "...";
                }
                else
                {
                    hint = "mode...";
                }

                OutlineBlock(context, hint);
            }
Beispiel #3
0
            public override Tuple <IParseTree, int> VisitModeSpec([NotNull] AbstractGrammarParser.ModeSpecContext context)
            {
                // use the preceding rule (if any), otherwise relative to mode
                for (int i = priorSiblings.Count - 2; i >= 0; i--)
                {
                    IRuleNode sibling = priorSiblings[i] as IRuleNode;
                    if (sibling == null)
                    {
                        continue;
                    }

                    RuleContext ruleContext = sibling.RuleContext;
                    if (context.RuleIndex == GrammarParser.RULE_ruleSpec)
                    {
                        return(Tuple.Create <IParseTree, int>(ruleContext, 0));
                    }
                }

                return(Tuple.Create <IParseTree, int>(context, _indentSize));
            }
 public override void ExitModeSpec([NotNull] AbstractGrammarParser.ModeSpecContext context)
 {
     _mode.Pop();
 }