15 #ifndef RCL__LEXER_LOOKAHEAD_H_
16 #define RCL__LEXER_LOOKAHEAD_H_
20 #include "rcl/allocator.h"
21 #include "rcl/lexer.h"
22 #include "rcl/macros.h"
23 #include "rcl/types.h"
24 #include "rcl/visibility_control.h"
32 struct rcl_lexer_lookahead2_impl_t;
38 struct rcl_lexer_lookahead2_impl_t *
impl;
57 rcl_get_zero_initialized_lexer_lookahead2();
86 rcl_lexer_lookahead2_init(
112 rcl_lexer_lookahead2_fini(
139 rcl_lexer_lookahead2_peek(
141 rcl_lexeme_t * next_type);
168 rcl_lexer_lookahead2_peek2(
170 rcl_lexeme_t * next_type1,
171 rcl_lexeme_t * next_type2);
198 rcl_lexer_lookahead2_accept(
200 const char ** lexeme_text,
201 size_t * lexeme_text_length);
231 rcl_lexer_lookahead2_expect(
234 const char ** lexeme_text,
235 size_t * lexeme_text_length);
255 rcl_lexer_lookahead2_get_text(
262 #endif // RCL__LEXER_LOOKAHEAD_H_