Turnstone Operating System
Loading...
Searching...
No Matches
pascal_lexer.64.c File Reference

Pascal lexer implementation. More...

#include <compiler/pascal.h>
#include <logging.h>
#include <utils.h>
#include <strings.h>

Macros

#define ___COMPILER_PASCAL_IMPLEMENTATION   0
 

Functions

 MODULE ("turnstone.compiler.pascal")
 
int8_t compiler_token_destroy (compiler_token_t *token)
 
int8_t pascal_lexer_init (pascal_lexer_t *lexer, buffer_t *buffer)
 
int8_t pascal_lexer_advance (pascal_lexer_t *lexer)
 
char_t pascal_lexer_peek (pascal_lexer_t *lexer)
 
int8_t pascal_lexer_skip_whitespace (pascal_lexer_t *lexer)
 
int8_t pascal_lexer_get_number (pascal_lexer_t *lexer, compiler_token_t **token)
 
int8_t pascal_lexer_get_id (pascal_lexer_t *lexer, compiler_token_t **token)
 
int8_t pascal_lexer_get_next_token (pascal_lexer_t *lexer, compiler_token_t **token)
 
int8_t pascal_lexer_get_string (pascal_lexer_t *lexer, compiler_token_t **token)
 

Variables

const char_t *const pascal_keywords []
 
const compiler_token_t reserved_tokens []
 

Detailed Description

Pascal lexer implementation.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.