scanner: // style comments are implemented too
This commit is contained in:
parent
2216cd81e9
commit
a299665100
@ -120,7 +120,7 @@ func (s *Scanner) Scan() (tok token.Token) {
|
|||||||
case '"':
|
case '"':
|
||||||
tok = token.STRING
|
tok = token.STRING
|
||||||
s.scanString()
|
s.scanString()
|
||||||
case '#':
|
case '#', '/':
|
||||||
tok = token.COMMENT
|
tok = token.COMMENT
|
||||||
s.scanComment(ch)
|
s.scanComment(ch)
|
||||||
case '.':
|
case '.':
|
||||||
@ -156,7 +156,7 @@ func (s *Scanner) Scan() (tok token.Token) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *Scanner) scanComment(ch rune) {
|
func (s *Scanner) scanComment(ch rune) {
|
||||||
if ch == '#' {
|
if ch == '#' || ch == '/' {
|
||||||
// line comment
|
// line comment
|
||||||
ch = s.next()
|
ch = s.next()
|
||||||
for ch != '\n' && ch >= 0 {
|
for ch != '\n' && ch >= 0 {
|
||||||
|
@ -42,11 +42,12 @@ func testTokenList(t *testing.T, tokenList []tokenPair) {
|
|||||||
|
|
||||||
func TestComment(t *testing.T) {
|
func TestComment(t *testing.T) {
|
||||||
var tokenList = []tokenPair{
|
var tokenList = []tokenPair{
|
||||||
// {token.COMMENT, "//"},
|
{token.COMMENT, "//"},
|
||||||
// {token.COMMENT, "////"},
|
{token.COMMENT, "////"},
|
||||||
// {token.COMMENT, "// comment"},
|
{token.COMMENT, "// comment"},
|
||||||
// {token.COMMENT, "// /* comment */"},
|
{token.COMMENT, "// /* comment */"},
|
||||||
// {token.COMMENT, "// // comment //"},
|
{token.COMMENT, "// // comment //"},
|
||||||
|
{token.COMMENT, "//" + f100},
|
||||||
{token.COMMENT, "#"},
|
{token.COMMENT, "#"},
|
||||||
{token.COMMENT, "##"},
|
{token.COMMENT, "##"},
|
||||||
{token.COMMENT, "# comment"},
|
{token.COMMENT, "# comment"},
|
||||||
|
Loading…
Reference in New Issue
Block a user