From 5df7f92e715ba764ee57f65d78e73111492bb64c Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 20 Mar 2019 18:53:47 +0100 Subject: Add pub keyword, more import stuff, optimize hash map Hash map now stores hash of keys to reduce the number of hash operations. Positive: faster insert/get. Negative: more space required (to store usize hash). --- src/tokenizer.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/tokenizer.c') diff --git a/src/tokenizer.c b/src/tokenizer.c index 4403251..c59f80c 100644 --- a/src/tokenizer.c +++ b/src/tokenizer.c @@ -175,6 +175,9 @@ static CHECK_RESULT int __tokenizer_next(Tokenizer *self, Token *token) { if(am_memeql(self->value.identifier.data, "var", 3)) { *token = TOK_VAR; return TOKENIZER_OK; + } else if(am_memeql(self->value.identifier.data, "pub", 3)) { + *token = TOK_PUB; + return TOKENIZER_OK; } break; } @@ -442,6 +445,9 @@ static BufferView tokenizer_expected_token_as_string(Token token) { case TOK_COLON: str = ":"; break; + case TOK_PUB: + str = "pub"; + break; } return create_buffer_view(str, strlen(str)); } -- cgit v1.2.3