diff --git a/xo-reader2/idl/SyntaxStateMachine.json5 b/xo-reader2/idl/SyntaxStateMachine.json5 index ad68d5bc..d03808c1 100644 --- a/xo-reader2/idl/SyntaxStateMachine.json5 +++ b/xo-reader2/idl/SyntaxStateMachine.json5 @@ -99,6 +99,15 @@ {type: "ParserStateMachine *", name: "p_psm"}, ], }, + { + name: "on_i64_token", + doc: ["update state machine for incoming i64-token @p tk"], + return_type: "void", + args: [ + {type: "const Token &", name: "tk"}, + {type: "ParserStateMachine *", name: "p_psm"}, + ], + }, { name: "on_bool_token", doc: ["update state machine for incoming bool-token @p tk"], diff --git a/xo-reader2/include/xo/reader2/DDefineSsm.hpp b/xo-reader2/include/xo/reader2/DDefineSsm.hpp index 912ccaf5..0bafe4cb 100644 --- a/xo-reader2/include/xo/reader2/DDefineSsm.hpp +++ b/xo-reader2/include/xo/reader2/DDefineSsm.hpp @@ -153,6 +153,12 @@ namespace xo { void on_f64_token(const Token & tk, ParserStateMachine * p_psm); + /** update state for this syntax on incoming i64 token @p tk, + * overall parser state in @p p_psm + **/ + void on_i64_token(const Token & tk, + ParserStateMachine * p_psm); + /** update state for this syntax on incoming bool token @p tk, * overall parser state in @p p_psm **/ diff --git a/xo-reader2/include/xo/reader2/DExpectExprSsm.hpp b/xo-reader2/include/xo/reader2/DExpectExprSsm.hpp index 8b37a901..5a628742 100644 --- a/xo-reader2/include/xo/reader2/DExpectExprSsm.hpp +++ b/xo-reader2/include/xo/reader2/DExpectExprSsm.hpp @@ -89,6 +89,12 @@ namespace xo { void on_f64_token(const Token & tk, ParserStateMachine * p_psm); + /** update state for this syntax on incoming i64 token @p tk, + * overall parser state in @p p_psm + **/ + void on_i64_token(const Token & tk, + ParserStateMachine * p_psm); + /** update state for this syntax on incoming bool token @p tk, * overall parser state in @p p_psm **/ diff --git a/xo-reader2/include/xo/reader2/DExpectSymbolSsm.hpp b/xo-reader2/include/xo/reader2/DExpectSymbolSsm.hpp index 9ece9f51..910c1978 100644 --- a/xo-reader2/include/xo/reader2/DExpectSymbolSsm.hpp +++ b/xo-reader2/include/xo/reader2/DExpectSymbolSsm.hpp @@ -123,6 +123,12 @@ namespace xo { void on_f64_token(const Token & tk, ParserStateMachine * p_psm); + /** update state for this syntax on incoming i64 token @p tk, + * overall parser state in @p p_psm + **/ + void on_i64_token(const Token & tk, + ParserStateMachine * p_psm); + /** update state for this syntax on incoming bool token @p tk, * overall parser state in @p p_psm **/ diff --git a/xo-reader2/include/xo/reader2/DExpectTypeSsm.hpp b/xo-reader2/include/xo/reader2/DExpectTypeSsm.hpp index b43b6eee..77a54f61 100644 --- a/xo-reader2/include/xo/reader2/DExpectTypeSsm.hpp +++ b/xo-reader2/include/xo/reader2/DExpectTypeSsm.hpp @@ -83,6 +83,12 @@ namespace xo { void on_f64_token(const Token & tk, ParserStateMachine * p_psm); + /** update state for this syntax on incoming i64 token @p tk, + * overall parser state in @p p_psm + **/ + void on_i64_token(const Token & tk, + ParserStateMachine * p_psm); + /** update state for this syntax on incoming bool token @p tk, * overall parser state in @p p_psm **/ diff --git a/xo-reader2/include/xo/reader2/DExprSeqState.hpp b/xo-reader2/include/xo/reader2/DExprSeqState.hpp index c9fe69e1..4ee2e177 100644 --- a/xo-reader2/include/xo/reader2/DExprSeqState.hpp +++ b/xo-reader2/include/xo/reader2/DExprSeqState.hpp @@ -95,6 +95,11 @@ namespace xo { **/ void on_f64_token(const Token & tk, ParserStateMachine * p_psm); + /** update state for this syntax on incoming i64 token @p tk, + * overall parser state in @p p_psm + **/ + void on_i64_token(const Token & tk, ParserStateMachine * p_psm); + /** update state for this syntax on incoming bool token @p tk, * overall parser state in @p p_psm **/ diff --git a/xo-reader2/include/xo/reader2/DProgressSsm.hpp b/xo-reader2/include/xo/reader2/DProgressSsm.hpp index 2d0a4df2..ae3bdb85 100644 --- a/xo-reader2/include/xo/reader2/DProgressSsm.hpp +++ b/xo-reader2/include/xo/reader2/DProgressSsm.hpp @@ -143,6 +143,8 @@ namespace xo { ParserStateMachine * p_psm); void on_f64_token(const Token & tk, ParserStateMachine * p_psm); + void on_i64_token(const Token & tk, + ParserStateMachine * p_psm); void on_bool_token(const Token & tk, ParserStateMachine * p_psm); void on_semicolon_token(const Token & tk, diff --git a/xo-reader2/include/xo/reader2/ParserStateMachine.hpp b/xo-reader2/include/xo/reader2/ParserStateMachine.hpp index 80690c29..870b1d66 100644 --- a/xo-reader2/include/xo/reader2/ParserStateMachine.hpp +++ b/xo-reader2/include/xo/reader2/ParserStateMachine.hpp @@ -141,6 +141,9 @@ namespace xo { /** operate state machine for incoming f64-token @p tk **/ void on_f64_token(const Token & tk); + /** operate state machine for incoming i64-token @p tk **/ + void on_i64_token(const Token & tk); + /** operate state machine for incoming bool-token @p tk **/ void on_bool_token(const Token & tk); diff --git a/xo-reader2/include/xo/reader2/ssm/ASyntaxStateMachine.hpp b/xo-reader2/include/xo/reader2/ssm/ASyntaxStateMachine.hpp index 4e9bd99f..feb4a62b 100644 --- a/xo-reader2/include/xo/reader2/ssm/ASyntaxStateMachine.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ASyntaxStateMachine.hpp @@ -69,6 +69,8 @@ public: virtual void on_singleassign_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) = 0; /** update state machine for incoming f64-token @p tk **/ virtual void on_f64_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) = 0; + /** update state machine for incoming i64-token @p tk **/ + virtual void on_i64_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) = 0; /** update state machine for incoming bool-token @p tk **/ virtual void on_bool_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) = 0; /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Any.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Any.hpp index 5d339902..06fd2ff9 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Any.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Any.hpp @@ -66,6 +66,7 @@ namespace scm { [[noreturn]] void on_colon_token(Opaque, const Token &, ParserStateMachine *) override; [[noreturn]] void on_singleassign_token(Opaque, const Token &, ParserStateMachine *) override; [[noreturn]] void on_f64_token(Opaque, const Token &, ParserStateMachine *) override; + [[noreturn]] void on_i64_token(Opaque, const Token &, ParserStateMachine *) override; [[noreturn]] void on_bool_token(Opaque, const Token &, ParserStateMachine *) override; [[noreturn]] void on_semicolon_token(Opaque, const Token &, ParserStateMachine *) override; [[noreturn]] void on_parsed_symbol(Opaque, std::string_view, ParserStateMachine *) override; diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DDefineSsm.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DDefineSsm.hpp index cdc01066..4c22c587 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DDefineSsm.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DDefineSsm.hpp @@ -66,6 +66,8 @@ namespace xo { static void on_singleassign_token(DDefineSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming f64-token @p tk **/ static void on_f64_token(DDefineSsm & self, const Token & tk, ParserStateMachine * p_psm); + /** update state machine for incoming i64-token @p tk **/ + static void on_i64_token(DDefineSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming bool-token @p tk **/ static void on_bool_token(DDefineSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectExprSsm.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectExprSsm.hpp index 8758347c..6c64836e 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectExprSsm.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectExprSsm.hpp @@ -66,6 +66,8 @@ namespace xo { static void on_singleassign_token(DExpectExprSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming f64-token @p tk **/ static void on_f64_token(DExpectExprSsm & self, const Token & tk, ParserStateMachine * p_psm); + /** update state machine for incoming i64-token @p tk **/ + static void on_i64_token(DExpectExprSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming bool-token @p tk **/ static void on_bool_token(DExpectExprSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectSymbolSsm.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectSymbolSsm.hpp index 95adca39..0647ce38 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectSymbolSsm.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectSymbolSsm.hpp @@ -66,6 +66,8 @@ namespace xo { static void on_singleassign_token(DExpectSymbolSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming f64-token @p tk **/ static void on_f64_token(DExpectSymbolSsm & self, const Token & tk, ParserStateMachine * p_psm); + /** update state machine for incoming i64-token @p tk **/ + static void on_i64_token(DExpectSymbolSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming bool-token @p tk **/ static void on_bool_token(DExpectSymbolSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectTypeSsm.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectTypeSsm.hpp index 81d13c47..ec3f10fc 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectTypeSsm.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExpectTypeSsm.hpp @@ -66,6 +66,8 @@ namespace xo { static void on_singleassign_token(DExpectTypeSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming f64-token @p tk **/ static void on_f64_token(DExpectTypeSsm & self, const Token & tk, ParserStateMachine * p_psm); + /** update state machine for incoming i64-token @p tk **/ + static void on_i64_token(DExpectTypeSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming bool-token @p tk **/ static void on_bool_token(DExpectTypeSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExprSeqState.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExprSeqState.hpp index f95989ad..c8205ff1 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExprSeqState.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DExprSeqState.hpp @@ -66,6 +66,8 @@ namespace xo { static void on_singleassign_token(DExprSeqState & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming f64-token @p tk **/ static void on_f64_token(DExprSeqState & self, const Token & tk, ParserStateMachine * p_psm); + /** update state machine for incoming i64-token @p tk **/ + static void on_i64_token(DExprSeqState & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming bool-token @p tk **/ static void on_bool_token(DExprSeqState & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DProgressSsm.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DProgressSsm.hpp index 0362e433..9cec85e1 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DProgressSsm.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_DProgressSsm.hpp @@ -66,6 +66,8 @@ namespace xo { static void on_singleassign_token(DProgressSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming f64-token @p tk **/ static void on_f64_token(DProgressSsm & self, const Token & tk, ParserStateMachine * p_psm); + /** update state machine for incoming i64-token @p tk **/ + static void on_i64_token(DProgressSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming bool-token @p tk **/ static void on_bool_token(DProgressSsm & self, const Token & tk, ParserStateMachine * p_psm); /** update state machine for incoming semicolon-token @p tk **/ diff --git a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Xfer.hpp b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Xfer.hpp index fbfd99b7..31681b46 100644 --- a/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Xfer.hpp +++ b/xo-reader2/include/xo/reader2/ssm/ISyntaxStateMachine_Xfer.hpp @@ -70,6 +70,9 @@ namespace scm { void on_f64_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) override { return I::on_f64_token(_dcast(data), tk, p_psm); } + void on_i64_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) override { + return I::on_i64_token(_dcast(data), tk, p_psm); + } void on_bool_token(Opaque data, const Token & tk, ParserStateMachine * p_psm) override { return I::on_bool_token(_dcast(data), tk, p_psm); } diff --git a/xo-reader2/include/xo/reader2/ssm/RSyntaxStateMachine.hpp b/xo-reader2/include/xo/reader2/ssm/RSyntaxStateMachine.hpp index 2741dc76..4df02804 100644 --- a/xo-reader2/include/xo/reader2/ssm/RSyntaxStateMachine.hpp +++ b/xo-reader2/include/xo/reader2/ssm/RSyntaxStateMachine.hpp @@ -74,6 +74,9 @@ public: void on_f64_token(const Token & tk, ParserStateMachine * p_psm) { return O::iface()->on_f64_token(O::data(), tk, p_psm); } + void on_i64_token(const Token & tk, ParserStateMachine * p_psm) { + return O::iface()->on_i64_token(O::data(), tk, p_psm); + } void on_bool_token(const Token & tk, ParserStateMachine * p_psm) { return O::iface()->on_bool_token(O::data(), tk, p_psm); } diff --git a/xo-reader2/src/reader2/DDefineSsm.cpp b/xo-reader2/src/reader2/DDefineSsm.cpp index 063572d3..eb1d5d55 100644 --- a/xo-reader2/src/reader2/DDefineSsm.cpp +++ b/xo-reader2/src/reader2/DDefineSsm.cpp @@ -576,6 +576,15 @@ namespace xo { this->get_expect_str()); } + void + DDefineSsm::on_i64_token(const Token & tk, + ParserStateMachine * p_psm) + { + p_psm->illegal_input_on_token("DDefineSsm::on_i64_token", + tk, + this->get_expect_str()); + } + void DDefineSsm::on_bool_token(const Token & tk, ParserStateMachine * p_psm) diff --git a/xo-reader2/src/reader2/DExpectExprSsm.cpp b/xo-reader2/src/reader2/DExpectExprSsm.cpp index a6aff620..553973a6 100644 --- a/xo-reader2/src/reader2/DExpectExprSsm.cpp +++ b/xo-reader2/src/reader2/DExpectExprSsm.cpp @@ -170,6 +170,15 @@ namespace xo { p_psm); } + void + DExpectExprSsm::on_i64_token(const Token & tk, + ParserStateMachine * p_psm) + { + p_psm->illegal_input_on_token("DExpectExprSsm::on_i64_token", + tk, + this->get_expect_str()); + } + void DExpectExprSsm::on_bool_token(const Token & tk, ParserStateMachine * p_psm) diff --git a/xo-reader2/src/reader2/DExpectSymbolSsm.cpp b/xo-reader2/src/reader2/DExpectSymbolSsm.cpp index 4bb3c05a..d32f3ce5 100644 --- a/xo-reader2/src/reader2/DExpectSymbolSsm.cpp +++ b/xo-reader2/src/reader2/DExpectSymbolSsm.cpp @@ -158,6 +158,15 @@ namespace xo { this->get_expect_str()); } + void + DExpectSymbolSsm::on_i64_token(const Token & tk, + ParserStateMachine * p_psm) + { + p_psm->illegal_input_on_token("DExpectSymbolSsm::on_i64_token", + tk, + this->get_expect_str()); + } + void DExpectSymbolSsm::on_bool_token(const Token & tk, ParserStateMachine * p_psm) diff --git a/xo-reader2/src/reader2/DExpectTypeSsm.cpp b/xo-reader2/src/reader2/DExpectTypeSsm.cpp index 643defb5..d20128c0 100644 --- a/xo-reader2/src/reader2/DExpectTypeSsm.cpp +++ b/xo-reader2/src/reader2/DExpectTypeSsm.cpp @@ -101,6 +101,15 @@ namespace xo { this->get_expect_str()); } + void + DExpectTypeSsm::on_i64_token(const Token & tk, + ParserStateMachine * p_psm) + { + p_psm->illegal_input_on_token("DExpectTypeSsm::on_i64_token", + tk, + this->get_expect_str()); + } + void DExpectTypeSsm::on_bool_token(const Token & tk, ParserStateMachine * p_psm) diff --git a/xo-reader2/src/reader2/DExprSeqState.cpp b/xo-reader2/src/reader2/DExprSeqState.cpp index 1d7aea93..6f196963 100644 --- a/xo-reader2/src/reader2/DExprSeqState.cpp +++ b/xo-reader2/src/reader2/DExprSeqState.cpp @@ -219,6 +219,15 @@ namespace xo { this->get_expect_str()); } + void + DExprSeqState::on_i64_token(const Token & tk, + ParserStateMachine * p_psm) + { + p_psm->illegal_input_on_token("DExprSeqState::on_i64_token", + tk, + this->get_expect_str()); + } + void DExprSeqState::on_bool_token(const Token & tk, ParserStateMachine * p_psm) diff --git a/xo-reader2/src/reader2/DProgressSsm.cpp b/xo-reader2/src/reader2/DProgressSsm.cpp index 00571edb..f6b14bc1 100644 --- a/xo-reader2/src/reader2/DProgressSsm.cpp +++ b/xo-reader2/src/reader2/DProgressSsm.cpp @@ -212,6 +212,15 @@ namespace xo { this->get_expect_str()); } + void + DProgressSsm::on_i64_token(const Token & tk, + ParserStateMachine * p_psm) + { + p_psm->illegal_input_on_token("DProgressSsm::on_i64_token", + tk, + this->get_expect_str()); + } + void DProgressSsm::on_bool_token(const Token & tk, ParserStateMachine * p_psm) diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_Any.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_Any.cpp index 4637f4c0..39fcea13 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_Any.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_Any.cpp @@ -70,6 +70,12 @@ ISyntaxStateMachine_Any::on_f64_token(Opaque, const Token &, ParserStateMachine _fatal(); } +auto +ISyntaxStateMachine_Any::on_i64_token(Opaque, const Token &, ParserStateMachine *) -> void +{ + _fatal(); +} + auto ISyntaxStateMachine_Any::on_bool_token(Opaque, const Token &, ParserStateMachine *) -> void { diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_DDefineSsm.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_DDefineSsm.cpp index ed07a417..69520cae 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_DDefineSsm.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_DDefineSsm.cpp @@ -58,6 +58,11 @@ namespace xo { self.on_f64_token(tk, p_psm); } auto + ISyntaxStateMachine_DDefineSsm::on_i64_token(DDefineSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void + { + self.on_i64_token(tk, p_psm); + } + auto ISyntaxStateMachine_DDefineSsm::on_bool_token(DDefineSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void { self.on_bool_token(tk, p_psm); diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectExprSsm.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectExprSsm.cpp index 7ad963c8..b247c821 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectExprSsm.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectExprSsm.cpp @@ -58,6 +58,11 @@ namespace xo { self.on_f64_token(tk, p_psm); } auto + ISyntaxStateMachine_DExpectExprSsm::on_i64_token(DExpectExprSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void + { + self.on_i64_token(tk, p_psm); + } + auto ISyntaxStateMachine_DExpectExprSsm::on_bool_token(DExpectExprSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void { self.on_bool_token(tk, p_psm); diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectSymbolSsm.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectSymbolSsm.cpp index 0012daad..318e68cb 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectSymbolSsm.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectSymbolSsm.cpp @@ -58,6 +58,11 @@ namespace xo { self.on_f64_token(tk, p_psm); } auto + ISyntaxStateMachine_DExpectSymbolSsm::on_i64_token(DExpectSymbolSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void + { + self.on_i64_token(tk, p_psm); + } + auto ISyntaxStateMachine_DExpectSymbolSsm::on_bool_token(DExpectSymbolSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void { self.on_bool_token(tk, p_psm); diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectTypeSsm.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectTypeSsm.cpp index 20d930b9..3d98c1f8 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectTypeSsm.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_DExpectTypeSsm.cpp @@ -58,6 +58,11 @@ namespace xo { self.on_f64_token(tk, p_psm); } auto + ISyntaxStateMachine_DExpectTypeSsm::on_i64_token(DExpectTypeSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void + { + self.on_i64_token(tk, p_psm); + } + auto ISyntaxStateMachine_DExpectTypeSsm::on_bool_token(DExpectTypeSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void { self.on_bool_token(tk, p_psm); diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_DExprSeqState.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_DExprSeqState.cpp index ddf20702..8ec4d055 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_DExprSeqState.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_DExprSeqState.cpp @@ -58,6 +58,11 @@ namespace xo { self.on_f64_token(tk, p_psm); } auto + ISyntaxStateMachine_DExprSeqState::on_i64_token(DExprSeqState & self, const Token & tk, ParserStateMachine * p_psm) -> void + { + self.on_i64_token(tk, p_psm); + } + auto ISyntaxStateMachine_DExprSeqState::on_bool_token(DExprSeqState & self, const Token & tk, ParserStateMachine * p_psm) -> void { self.on_bool_token(tk, p_psm); diff --git a/xo-reader2/src/reader2/ISyntaxStateMachine_DProgressSsm.cpp b/xo-reader2/src/reader2/ISyntaxStateMachine_DProgressSsm.cpp index 535ac2f6..45e9a566 100644 --- a/xo-reader2/src/reader2/ISyntaxStateMachine_DProgressSsm.cpp +++ b/xo-reader2/src/reader2/ISyntaxStateMachine_DProgressSsm.cpp @@ -58,6 +58,11 @@ namespace xo { self.on_f64_token(tk, p_psm); } auto + ISyntaxStateMachine_DProgressSsm::on_i64_token(DProgressSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void + { + self.on_i64_token(tk, p_psm); + } + auto ISyntaxStateMachine_DProgressSsm::on_bool_token(DProgressSsm & self, const Token & tk, ParserStateMachine * p_psm) -> void { self.on_bool_token(tk, p_psm); diff --git a/xo-reader2/src/reader2/ParserStateMachine.cpp b/xo-reader2/src/reader2/ParserStateMachine.cpp index 3915aca7..9a594340 100644 --- a/xo-reader2/src/reader2/ParserStateMachine.cpp +++ b/xo-reader2/src/reader2/ParserStateMachine.cpp @@ -187,6 +187,10 @@ namespace xo { this->on_f64_token(tk); break; + case tokentype::tk_i64: + this->on_i64_token(tk); + break; + case tokentype::tk_bool: this->on_bool_token(tk); break; @@ -197,7 +201,6 @@ namespace xo { // all the not-yet handled cases case tokentype::tk_invalid: - case tokentype::tk_i64: case tokentype::tk_string: case tokentype::tk_leftparen: case tokentype::tk_rightparen: @@ -283,6 +286,14 @@ namespace xo { stack_->top().on_f64_token(tk, this); } + void + ParserStateMachine::on_i64_token(const Token & tk) + { + scope log(XO_DEBUG(debug_flag_), xtag("tk", tk)); + + stack_->top().on_i64_token(tk, this); + } + void ParserStateMachine::on_bool_token(const Token & tk) {