diff --git a/kerep b/kerep index d9b0daf..3c132e1 160000 --- a/kerep +++ b/kerep @@ -1 +1 @@ -Subproject commit d9b0daf543a6df2860074087b7a970feb8540e15 +Subproject commit 3c132e12ea67c9b9c599153a2117e8fd7573d15e diff --git a/src/cb2c/main.c b/src/cb2c/main.c index 1b979b3..cc4bf15 100644 --- a/src/cb2c/main.c +++ b/src/cb2c/main.c @@ -1,6 +1,12 @@ #include "cb2c.h" int main(){ + // kerep type system + ktDescriptors_beginInit(); + ktDescriptors_initKerepTypes(); + ktDescriptors_initCbLexerTypes(); + ktDescriptors_endInit(); + // keywords search tree init_keywordsSearchTree(); printf("keywordsSearchTree: %p\n", keywordsSearchTree); STNode_free(keywordsSearchTree); diff --git a/src/lexer/init.c b/src/lexer/init.c new file mode 100644 index 0000000..8b00e3a --- /dev/null +++ b/src/lexer/init.c @@ -0,0 +1,8 @@ +#include "lexer.h" + +void ktDescriptors_initCbLexerTypes(){ + kt_register(Token, ktId_Token, NULL, NULL); + kt_register(Token*, ktId_TokenPtr, NULL, NULL); + kt_register(Autoarr_Token, ktId_AutoarrToken, ____Autoarr_free_Token, NULL); + kt_register(Autoarr_Token*, ktId_AutoarrTokenPtr, ____Autoarr_free_Token, NULL); +} \ No newline at end of file diff --git a/src/lexer/lexer.c b/src/lexer/lexer.c index 07d5f71..36764e2 100644 --- a/src/lexer/lexer.c +++ b/src/lexer/lexer.c @@ -46,9 +46,9 @@ void _addTok_ifnext(char next, TokenId yes, TokenId no, SharedLexerData* sld){ // adds