-
Notifications
You must be signed in to change notification settings - Fork 0
Tokenizer
Josias kasongo edited this page Jun 22, 2022
·
3 revisions
typedef struct s_tokinzer
{
char *sentence;
size_t len;
size_t cursor;
t_array *tokens;
} t_tokeniser;
Le tokenizer, il faut juste se fier au nom. Il permet de créer des tokens à partir d'une phrase, avec deux modes.
Que je n'utilise pas ici, il te permet de pouvoir avoir le prochain caractère dans la phrase en forme de token. Pour ceux qui font une sorte d'analyse pas à pas.
Le tokenizer a un comportement assez dangereux, il POP le last_token si celui-ci a les critère pour devenir un token beaucoup plus spécial.
Pour éviter des soucis je l'utilise en invoquant get_next_token(tokenizer)
jusqu'au token du type eof. Il a ainsi le temps de pop et push. La listes des tokens à la fin sont tous à jour, je veux dire, tout les token spéciaux qui résulte d'une concaténation de token sont créer.