예제 #1
0
        public ParseResult Parse(TokenStream toks, IParseStack stk)
        {
            var offset = toks.Car().Start.Offset;

            if (!_memo.TryGetValue(offset, out ParseResult r))
            {
                r             = _parser.Parse(toks, stk);
                _memo[offset] = r;
            }
            return(r);
        }