コード例 #1
0
ファイル: GrammarRootAST.cs プロジェクト: sharwell/antlr4cs
 public GrammarRootAST(GrammarRootAST node)
     : base(node)
 {
     this.grammarType = node.grammarType;
     this.hasErrors = node.hasErrors;
     this.tokenStream = node.tokenStream;
 }
コード例 #2
0
ファイル: GrammarRootAST.cs プロジェクト: yuanyong00/antlr4cs
 public GrammarRootAST(GrammarRootAST node)
     : base(node)
 {
     this.grammarType = node.grammarType;
     this.hasErrors   = node.hasErrors;
     this.tokenStream = node.tokenStream;
 }
コード例 #3
0
ファイル: GrammarRootAST.cs プロジェクト: sharwell/antlr4cs
        public GrammarRootAST(int type, IToken t, string text, ITokenStream tokenStream)
            : base(type, t, text)
        {
            if (tokenStream == null)
            {
                throw new ArgumentNullException(nameof(tokenStream));
            }

            this.tokenStream = tokenStream;
        }
コード例 #4
0
ファイル: GrammarRootAST.cs プロジェクト: sharwell/antlr4cs
        public GrammarRootAST(IToken t, ITokenStream tokenStream)
            : base(t)
        {
            if (tokenStream == null)
            {
                throw new ArgumentNullException(nameof(tokenStream));
            }

            this.tokenStream = tokenStream;
        }
コード例 #5
0
ファイル: GrammarRootAST.cs プロジェクト: yuanyong00/antlr4cs
        public GrammarRootAST(int type, IToken t, string text, ITokenStream tokenStream)
            : base(type, t, text)
        {
            if (tokenStream == null)
            {
                throw new ArgumentNullException(nameof(tokenStream));
            }

            this.tokenStream = tokenStream;
        }
コード例 #6
0
ファイル: GrammarRootAST.cs プロジェクト: yuanyong00/antlr4cs
        public GrammarRootAST(IToken t, ITokenStream tokenStream)
            : base(t)
        {
            if (tokenStream == null)
            {
                throw new ArgumentNullException(nameof(tokenStream));
            }

            this.tokenStream = tokenStream;
        }
コード例 #7
0
        public static void Visualize(this ITokenStream tokenStream, IWin32Window owner)
        {
            if (tokenStream == null)
            {
                throw new ArgumentNullException("tokenStream");
            }

            TokenStreamVisualizerForm visualizer = new TokenStreamVisualizerForm(tokenStream);

            visualizer.ShowDialog(owner);
        }
コード例 #8
0
        public BaseTreeVisualizerForm(ITreeAdaptor adaptor, object tree, ITokenStream tokenStream, string sourceText)
        {
            if (adaptor == null)
                throw new ArgumentNullException("adaptor");
            if (tree == null)
                throw new ArgumentNullException("tree");

            InitializeComponent();

            TreeVisualizerViewModel viewModel = new TreeVisualizerViewModel(adaptor, tree, tokenStream, sourceText);
            ((BaseTreeVisualizerViewControl)elementHost1.Child).ViewModel = viewModel;
        }
コード例 #9
0
ファイル: Profiler.cs プロジェクト: achoudh5/prando
        /// <summary>Get num hidden tokens between i..j inclusive</summary>
        public int GetNumberOfHiddenTokens(int i, int j)
        {
            int          n     = 0;
            ITokenStream input = parser.TokenStream;

            for (int ti = i; ti < input.Count && ti <= j; ti++)
            {
                IToken t = input.Get(ti);
                if (t.Channel != Token.DEFAULT_CHANNEL)
                {
                    n++;
                }
            }
            return(n);
        }
コード例 #10
0
        public static void Visualize(this ITreeAdaptor treeAdaptor, object tree, ITokenStream tokenStream, IWin32Window owner)
        {
            if (treeAdaptor == null)
            {
                throw new ArgumentNullException("treeAdaptor");
            }
            if (tree == null)
            {
                throw new ArgumentNullException("tree");
            }

            BaseTreeVisualizerForm visualizer = new BaseTreeVisualizerForm(treeAdaptor, tree, tokenStream);

            visualizer.ShowDialog(owner);
        }
コード例 #11
0
        public LeftRecursiveRuleAnalyzer(GrammarAST ruleAST,
                                         AntlrTool tool, string ruleName, string language)
            : base(new CommonTreeNodeStream(new GrammarASTAdaptor(ruleAST.Token.InputStream), ruleAST))
        {
            this.tool        = tool;
            this.ruleName    = ruleName;
            this.language    = language;
            this.tokenStream = ruleAST.g.tokenStream;
            if (this.tokenStream == null)
            {
                throw new InvalidOperationException("grammar must have a token stream");
            }

            LoadPrecRuleTemplates();
        }
コード例 #12
0
        public LeftRecursiveRuleAnalyzer(GrammarAST ruleAST,
                                         AntlrTool tool, string ruleName, string language)
            : base(new CommonTreeNodeStream(new GrammarASTAdaptor(ruleAST.Token.InputStream), ruleAST))
        {
            this.tool = tool;
            this.ruleName = ruleName;
            this.language = language;
            this.tokenStream = ruleAST.g.tokenStream;
            if (this.tokenStream == null)
            {
                throw new InvalidOperationException("grammar must have a token stream");
            }

            LoadPrecRuleTemplates();
        }
コード例 #13
0
        public BaseTreeVisualizerForm(ITreeAdaptor adaptor, object tree, ITokenStream tokenStream, string sourceText)
        {
            if (adaptor == null)
            {
                throw new ArgumentNullException("adaptor");
            }
            if (tree == null)
            {
                throw new ArgumentNullException("tree");
            }

            InitializeComponent();

            TreeVisualizerViewModel viewModel = new TreeVisualizerViewModel(adaptor, tree, tokenStream, sourceText);

            ((BaseTreeVisualizerViewControl)elementHost1.Child).ViewModel = viewModel;
        }
コード例 #14
0
 public override object ErrorNode(Antlr.Runtime.ITokenStream input, Antlr.Runtime.IToken start, Antlr.Runtime.IToken stop, Antlr.Runtime.RecognitionException e)
 {
     return(new LSLErrorNode(input, start, stop, e));
 }
コード例 #15
0
ファイル: ToolANTLRParser.cs プロジェクト: sharwell/antlr4cs
 public ToolANTLRParser(ITokenStream input, AntlrTool tool)
     : base(input)
 {
     this.tool = tool;
 }
コード例 #16
0
 public BaseTreeVisualizerForm(ITreeAdaptor adaptor, object tree, ITokenStream tokenStream)
     : this(adaptor, tree, tokenStream, null)
 {
 }
コード例 #17
0
 public GrammarASTErrorNode(ITokenStream input, IToken start, IToken stop,
                            RecognitionException e)
 {
     @delegate = new CommonErrorNode(input, start, stop, e);
 }
コード例 #18
0
 public BaseTreeVisualizerForm(ITreeAdaptor adaptor, object tree, ITokenStream tokenStream)
     : this(adaptor, tree, tokenStream, null)
 {
 }
コード例 #19
0
 public static void Visualize(this ITree tree, ITokenStream tokenStream, IWin32Window owner)
 {
     Visualize(new CommonTreeAdaptor(), tree, tokenStream, owner);
 }
コード例 #20
0
ファイル: Profiler.cs プロジェクト: achoudh5/prando
        // R E P O R T I N G


        public virtual string ToNotifyString()
        {
            ITokenStream input = parser.TokenStream;

            for (int i = 0; (i < input.Count) && (lastTokenConsumed != null) && (i <= lastTokenConsumed.TokenIndex); i++)
            {
                IToken t = input.Get(i);
                if (t.Channel != Token.DEFAULT_CHANNEL)
                {
                    numHiddenTokens++;
                    numHiddenCharsMatched += t.Text.Length;
                }
            }
            numCharsMatched             = lastTokenConsumed.StopIndex + 1;
            decisionMaxFixedLookaheads  = Trim(decisionMaxFixedLookaheads, numFixedDecisions);
            decisionMaxCyclicLookaheads = Trim(decisionMaxCyclicLookaheads, numCyclicDecisions);
            StringBuilder buf = new StringBuilder();

            buf.Append(Version);
            buf.Append('\t');
            buf.Append(parser.GetType().FullName);
            buf.Append('\t');
            buf.Append(numRuleInvocations);
            buf.Append('\t');
            buf.Append(maxRuleInvocationDepth);
            buf.Append('\t');
            buf.Append(numFixedDecisions);
            buf.Append('\t');
            buf.Append(Stats.Min(decisionMaxFixedLookaheads));
            buf.Append('\t');
            buf.Append(Stats.Max(decisionMaxFixedLookaheads));
            buf.Append('\t');
            buf.Append(Stats.Avg(decisionMaxFixedLookaheads));
            buf.Append('\t');
            buf.Append(Stats.Stddev(decisionMaxFixedLookaheads));
            buf.Append('\t');
            buf.Append(numCyclicDecisions);
            buf.Append('\t');
            buf.Append(Stats.Min(decisionMaxCyclicLookaheads));
            buf.Append('\t');
            buf.Append(Stats.Max(decisionMaxCyclicLookaheads));
            buf.Append('\t');
            buf.Append(Stats.Avg(decisionMaxCyclicLookaheads));
            buf.Append('\t');
            buf.Append(Stats.Stddev(decisionMaxCyclicLookaheads));
            buf.Append('\t');
            buf.Append(numBacktrackDecisions);
            buf.Append('\t');
            buf.Append(Stats.Min(ToArray(decisionMaxSynPredLookaheads)));
            buf.Append('\t');
            buf.Append(Stats.Max(ToArray(decisionMaxSynPredLookaheads)));
            buf.Append('\t');
            buf.Append(Stats.Avg(ToArray(decisionMaxSynPredLookaheads)));
            buf.Append('\t');
            buf.Append(Stats.Stddev(ToArray(decisionMaxSynPredLookaheads)));
            buf.Append('\t');
            buf.Append(numSemanticPredicates);
            buf.Append('\t');
            buf.Append(parser.TokenStream.Count);
            buf.Append('\t');
            buf.Append(numHiddenTokens);
            buf.Append('\t');
            buf.Append(numCharsMatched);
            buf.Append('\t');
            buf.Append(numHiddenCharsMatched);
            buf.Append('\t');
            buf.Append(numberReportedErrors);
            buf.Append('\t');
            buf.Append(numMemoizationCacheHits);
            buf.Append('\t');
            buf.Append(numMemoizationCacheMisses);
            buf.Append('\t');
            buf.Append(numGuessingRuleInvocations);
            buf.Append('\t');
            buf.Append(numMemoizationCacheEntries);
            return(buf.ToString());
        }
コード例 #21
0
 public GrammarASTErrorNode(ITokenStream input, IToken start, IToken stop,
                            RecognitionException e)
 {
     @delegate = new CommonErrorNode(input, start, stop, e);
 }
コード例 #22
0
 public static void Visualize(this ITree tree, ITokenStream tokenStream)
 {
     Visualize(new CommonTreeAdaptor(), tree, tokenStream);
 }
コード例 #23
0
 public ToolANTLRParser(ITokenStream input, AntlrTool tool)
     : base(input)
 {
     this.tool = tool;
 }