コード例 #1
0
ファイル: Matchable.cs プロジェクト: NH5pml30/il-parser
        public int Match(MarkedString source)
        {
            MarkedString saved = source.ShallowCopy();

            int last = source.AbsoluteAt;

            lastMatch = factory(source);
            if (lastMatch == null)
            {
                source.RevertToCopy(saved);
                LastError = "cannot parse " + name;
                return(-1);
            }
            int res = source.AbsoluteAt - last;

            source.RevertToCopy(saved);
            return(res);
        }
コード例 #2
0
 public void Append(IProgramElement first, params IProgramElement[] elements)
 {
     program.Add(first);
     program.AddRange(elements);
 }