15 using const_iterator =
typename std::vector<token_t>::const_iterator;
17 std::string_view::const_iterator first;
18 std::string_view::const_iterator last;
21 const_iterator token_it;
23 formula_parse_context(std::string_view::const_iterator first, std::string_view::const_iterator last) :
24 first(first), last(last), tokens(parseTokens(first, last)), token_it(tokens.
begin()) {}
26 [[nodiscard]]
token_t const& operator*()
const noexcept {
30 [[nodiscard]]
token_t const *operator->()
const noexcept {
35 tt_axiom(token_it != tokens.
end());
36 tt_axiom(*token_it != tokenizer_name_t::End);