@@ -70,7 +70,7 @@ template <typename Grammar, basic_fixed_string input, typename ActionSelector =
70
70
}
71
71
// if rule is string => push it to the front of stack
72
72
template <size_t Pos, typename ... Content, typename Terminal, typename Stack, typename Subject>
73
- static constexpr auto move (ctll::list <Content...> string, Terminal, Stack stack, Subject subject) noexcept {
73
+ static constexpr auto move (ctll::push <Content...> string, Terminal, Stack stack, Subject subject) noexcept {
74
74
return decide<Pos>(push_front (string, stack), subject);
75
75
}
76
76
// if rule is epsilon (empty string) => continue
@@ -81,13 +81,13 @@ template <typename Grammar, basic_fixed_string input, typename ActionSelector =
81
81
// if rule is string with current character at the beginning (term<V>) => move to next character
82
82
// and push string without the character (quick LL(1))
83
83
template <size_t Pos, auto V, typename ... Content, typename Stack, typename Subject>
84
- static constexpr auto move (ctll::list <term<V>, Content...>, term<V>, Stack stack, Subject) noexcept {
84
+ static constexpr auto move (ctll::push <term<V>, Content...>, term<V>, Stack stack, Subject) noexcept {
85
85
return seed<Pos+1 , decltype (push_front (list<Content...>(), stack)), Subject, decision::undecided>();
86
86
}
87
87
// if rule is string with any character at the beginning (compatible with current term<T>) => move to next character
88
88
// and push string without the character (quick LL(1))
89
89
template <size_t Pos, auto V, typename ... Content, auto T, typename Stack, typename Subject>
90
- static constexpr auto move (ctll::list <anything, Content...>, term<T>, Stack stack, Subject) noexcept {
90
+ static constexpr auto move (ctll::push <anything, Content...>, term<T>, Stack stack, Subject) noexcept {
91
91
return seed<Pos+1 , decltype (push_front (list<Content...>(), stack)), Subject, decision::undecided>();
92
92
}
93
93
// decide if we need to take action or move
0 commit comments