keywordsSearchTree fixed
This commit is contained in:
parent
8f36aac35e
commit
78e8c1ba14
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
int main(){
|
int main(){
|
||||||
init_keywordsSearchTree();
|
init_keywordsSearchTree();
|
||||||
|
printf("keywordsSearchTree: %p\n", keywordsSearchTree);
|
||||||
STNode_free(keywordsSearchTree);
|
STNode_free(keywordsSearchTree);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -4,5 +4,6 @@
|
|||||||
|
|
||||||
|
|
||||||
typedef enum lexer_type{
|
typedef enum lexer_type{
|
||||||
AutoarrTokenPtr=my_type_last+1
|
TokenPtr=my_type_last+1,
|
||||||
|
AutoarrTokenPtr
|
||||||
} lexer_type;
|
} lexer_type;
|
||||||
@ -2,11 +2,13 @@
|
|||||||
|
|
||||||
Autoarr_define(Token)
|
Autoarr_define(Token)
|
||||||
|
|
||||||
|
|
||||||
|
STNode* keywordsSearchTree=NULL;
|
||||||
void init_keywordsSearchTree(){
|
void init_keywordsSearchTree(){
|
||||||
keywordsSearchTree=STNode_create();
|
keywordsSearchTree=STNode_create();
|
||||||
for(TokenId keywordId=0; keywordId<=tok_typeof; keywordId++){
|
for(TokenId keywordId=0; keywordId<=tok_typeof; keywordId++){
|
||||||
Token keyword=default_tokens[keywordId];
|
const Token* keywordptr=&default_tokens[keywordId];
|
||||||
Unitype fake_uni=*(Unitype*)(void*)&keyword;
|
Unitype uni=UniPtr(Int64, keywordptr);
|
||||||
ST_push(keywordsSearchTree, keyword.value, fake_uni);
|
ST_push(keywordsSearchTree, keywordptr->value, uni);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -105,7 +105,7 @@ typedef struct Token{
|
|||||||
TokenId id;
|
TokenId id;
|
||||||
} Token;
|
} Token;
|
||||||
|
|
||||||
static STNode* keywordsSearchTree;
|
extern STNode* keywordsSearchTree;
|
||||||
// dont forget to free it
|
// dont forget to free it
|
||||||
void init_keywordsSearchTree();
|
void init_keywordsSearchTree();
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user