Add comments to the lexer
This commit is contained in:
parent
90a495ba1b
commit
7478a0d29f
@ -93,6 +93,14 @@ lexer_skip_whitespace :: proc(lexer: ^Lexer) {
|
|||||||
|
|
||||||
lexer_next :: proc(lexer: ^Lexer) -> (ret: Token) {
|
lexer_next :: proc(lexer: ^Lexer) -> (ret: Token) {
|
||||||
lexer_skip_whitespace(lexer)
|
lexer_skip_whitespace(lexer)
|
||||||
|
if lexer.char == '\\' {
|
||||||
|
lexer_advance(lexer)
|
||||||
|
for lexer.char != '\n' && lexer.char != 0 {
|
||||||
|
lexer_advance(lexer)
|
||||||
|
}
|
||||||
|
return lexer_next(lexer)
|
||||||
|
}
|
||||||
|
|
||||||
if lexer.should_return_semicolon {
|
if lexer.should_return_semicolon {
|
||||||
lexer.should_return_semicolon = false
|
lexer.should_return_semicolon = false
|
||||||
return token_create(.Semicolon, TextRange { start = lexer.position, end = lexer.position })
|
return token_create(.Semicolon, TextRange { start = lexer.position, end = lexer.position })
|
||||||
|
4
test.cat
4
test.cat
@ -1,10 +1,12 @@
|
|||||||
use "fmt.cat"
|
use "fmt.cat"
|
||||||
use lib "directory/long_library_name"
|
use lib "directory/long_library_name"
|
||||||
|
|
||||||
|
\ This is a comment, it should be ignored by the compiler
|
||||||
|
|
||||||
fmt.printf "%d + %d = %d File length: %d" a b a + b (io.file_size "file.txt")
|
fmt.printf "%d + %d = %d File length: %d" a b a + b (io.file_size "file.txt")
|
||||||
fmt.println "Hello world!"
|
fmt.println "Hello world!"
|
||||||
|
|
||||||
let a := 123
|
let a := 123 \ This is another comment, that should be ignored by the compiler
|
||||||
let uninitialized : u32
|
let uninitialized : u32
|
||||||
let multiple variables here : u32 = 1 2 3
|
let multiple variables here : u32 = 1 2 3
|
||||||
let string : str, number : i32
|
let string : str, number : i32
|
||||||
|
Loading…
x
Reference in New Issue
Block a user