Пример #1
0
        public bool IsMatch(Tokenizer tokenizer, out Token token)
        {
            int position = tokenizer.Index;

            if (tokenizer.EOS)
            {
                token = new EndOfFileToken {
                    Position = position
                };
                return(true);
            }

            using (ISnapshot snapshot = tokenizer.TakeSnapshot())
            {
                token = GetToken(tokenizer);

                if (token != null)
                {
                    token.Position = position;
                    snapshot.Commit();
                }

                return(token != null);
            }
        }
Пример #2
0
 public override void Commit()
 {
     base.Commit();
     snapshot.Commit();
 }
Пример #3
0
 public void Commit()
 {
     Trie.Commit();
     snapshot.Commit();
 }
Пример #4
0
 public void Commit()
 {
     snapshot.Commit();
 }