static SyntaxTuple MakeTuples(IEnumerable <Token> tokens) { var reader = new TokenReader(tokens); RootTuple roots = null; try { roots = MakeRoot(ref reader); } catch (ArgumentException e) { throw new ArgumentException(e.Message + Environment.NewLine + "他のエラー:" + String.Join(Environment.NewLine, reader.Errors()), e); } if (reader.IsContainErrors) { throw new ArgumentException("シンタックス エラー:" + String.Join(Environment.NewLine, reader.Errors())); } if (reader.IsRemainToken) { throw new ArgumentException("閉じ括弧が多すぎる可能性があります。(クエリは途中で解析を完了しました) (next:@" + reader.Get().DebugIndex + ")"); } return(roots); }
static SyntaxTuple MakeTuples(IEnumerable<Token> tokens) { var reader = new TokenReader(tokens); RootTuple roots = null; try { roots = MakeRoot(ref reader); } catch (ArgumentException e) { throw new ArgumentException(e.Message + Environment.NewLine + "他のエラー:" + String.Join(Environment.NewLine, reader.Errors()), e); } if (reader.IsContainErrors) { throw new ArgumentException("シンタックス エラー:" + String.Join(Environment.NewLine, reader.Errors())); } if (reader.IsRemainToken) { throw new ArgumentException("閉じ括弧が多すぎる可能性があります。(クエリは途中で解析を完了しました) (next:@" + reader.Get().DebugIndex + ")"); } return roots; }