mirror of
https://github.com/samsonjs/compiler.git
synced 2026-03-25 08:45:52 +00:00
# comments till the end of the current line
This commit is contained in:
parent
509c7a88ce
commit
d2e7c987d8
1 changed files with 13 additions and 1 deletions
14
compiler.rb
14
compiler.rb
|
|
@ -69,6 +69,9 @@ class Compiler
|
|||
elsif newline?(@look)
|
||||
skip_any_whitespace
|
||||
scan
|
||||
elsif comment_char?(@look)
|
||||
skip_comment
|
||||
scan
|
||||
else
|
||||
# XXX default to single char op... should probably raise.
|
||||
@token = :op
|
||||
|
|
@ -737,6 +740,10 @@ class Compiler
|
|||
char == "\n" || char == "\r"
|
||||
end
|
||||
|
||||
def comment_char?(char)
|
||||
char == '#'
|
||||
end
|
||||
|
||||
def any_whitespace?(char)
|
||||
whitespace?(char) || newline?(char)
|
||||
end
|
||||
|
|
@ -817,7 +824,12 @@ class Compiler
|
|||
get_char while any_whitespace?(@look)
|
||||
end
|
||||
|
||||
|
||||
def skip_comment
|
||||
get_char until newline?(@look)
|
||||
skip_any_whitespace
|
||||
end
|
||||
|
||||
|
||||
def indent
|
||||
real_indent = if @value == 'else' || @value == 'end'
|
||||
@indent - 1
|
||||
|
|
|
|||
Loading…
Reference in a new issue