diff --git a/spec/stream_methods.h b/spec/stream_methods.h index 36879e4e..83dbe636 100644 --- a/spec/stream_methods.h +++ b/spec/stream_methods.h @@ -5,6 +5,7 @@ #include #include #include +#include using std::cout; @@ -21,6 +22,18 @@ namespace std { return stream << ">"; } + template + inline std::ostream& operator<<(std::ostream &stream, const std::vector &vector) { + stream << std::string("#"; + } + template inline std::ostream& operator<<(std::ostream &stream, const std::set &set) { stream << std::string("# #"); + started1 = true; + } + stream << string(">"); + return stream; + } + // Table size_t ParseTable::add_state() { states.push_back(ParseState()); diff --git a/src/compiler/parse_table.h b/src/compiler/parse_table.h index f9efcd92..82225bd6 100644 --- a/src/compiler/parse_table.h +++ b/src/compiler/parse_table.h @@ -54,6 +54,8 @@ namespace tree_sitter { size_t lex_state_index; }; + std::ostream& operator<<(std::ostream &stream, const ParseState &state); + class ParseTable { public: size_t add_state();