add LL backend stub
This commit is contained in:
parent
e73377fbda
commit
1325ebcdd1
5 changed files with 22 additions and 1 deletions
|
|
@ -26,7 +26,8 @@ PARSERS := \
|
|||
indirect
|
||||
|
||||
BACKENDS := \
|
||||
packrat
|
||||
packrat \
|
||||
ll
|
||||
|
||||
HAMMER_PARTS := \
|
||||
bitreader.o \
|
||||
|
|
|
|||
17
src/backends/ll.c
Normal file
17
src/backends/ll.c
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
#include <assert.h>
|
||||
#include "../internal.h"
|
||||
#include "../parsers/parser_internal.h"
|
||||
|
||||
|
||||
int h_ll_compile(HAllocator* mm__, const HParser* parser, const void* params) {
|
||||
return -1; // TODO
|
||||
}
|
||||
|
||||
HParseResult *h_ll_parse(HAllocator* mm__, const HParser* parser, HParseState* parse_state) {
|
||||
return NULL; // TODO
|
||||
}
|
||||
|
||||
HParserBackendVTable h__ll_backend_vtable = {
|
||||
.compile = h_ll_compile,
|
||||
.parse = h_ll_parse
|
||||
};
|
||||
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
static HParserBackendVTable *backends[PB_MAX] = {
|
||||
&h__packrat_backend_vtable,
|
||||
&h__ll_backend_vtable,
|
||||
};
|
||||
|
||||
int h_compile(const HParser* parser, HParserBackend backend, const void* params) {
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ typedef struct HParseState_ HParseState;
|
|||
typedef enum HParserBackend_ {
|
||||
PB_MIN = 0,
|
||||
PB_PACKRAT = PB_MIN, // PB_MIN is always the default.
|
||||
PB_LL,
|
||||
PB_MAX
|
||||
} HParserBackend;
|
||||
|
||||
|
|
|
|||
|
|
@ -215,6 +215,7 @@ struct HBitWriter_ {
|
|||
|
||||
// Backends {{{
|
||||
extern HParserBackendVTable h__packrat_backend_vtable;
|
||||
extern HParserBackendVTable h__ll_backend_vtable;
|
||||
// }}}
|
||||
|
||||
// TODO(thequux): Set symbol visibility for these functions so that they aren't exported.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue