wow it hangs

This commit is contained in:
Sasha Koshka 2022-09-16 12:16:23 -04:00
parent 2111960f6d
commit 5b627f8995
2 changed files with 22 additions and 10 deletions

View File

@ -35,9 +35,18 @@ func (parser *ParsingOperation) parseDataSection () (
return return
} }
err = parser.expect(lexer.TokenKindNewline)
if err != nil { return }
err = parser.nextToken()
if err != nil { return }
// check if data is external // check if data is external
if parser.token.Is(lexer.TokenKindName) && if parser.token.Is(lexer.TokenKindIndent) &&
parser.token.Value().(string) == "external" { parser.token.Value().(int) == 1 {
err = parser.nextToken(lexer.TokenKindName)
if err != nil { return }
if parser.token.Value().(string) == "external" {
section.external = true section.external = true
err = parser.nextToken(lexer.TokenKindNewline) err = parser.nextToken(lexer.TokenKindNewline)
@ -46,5 +55,8 @@ func (parser *ParsingOperation) parseDataSection () (
if err != nil { return } if err != nil { return }
return return
} }
parser.previousToken()
}
return return
} }

View File

@ -128,7 +128,7 @@ func (what Type) ToString (indent int) (output string) {
output += what.defaultValue.ToString(indent, true) output += what.defaultValue.ToString(indent, true)
} else { } else {
output += ":<" output += ":<"
output += what.defaultValue.ToString(indent, true) output += what.defaultValue.ToString(indent, false)
output += ">\n" output += ">\n"
} }
} }
@ -269,7 +269,7 @@ func (argument Argument) ToString (indent int, breakLine bool) (output string) {
func (section DataSection) ToString (indent int) (output string) { func (section DataSection) ToString (indent int) (output string) {
output += doIndent ( output += doIndent (
indent, indent,
"type ", "data ",
section.permission.ToString(), " ", section.permission.ToString(), " ",
section.name, ":", section.name, ":",
section.what.ToString(indent), "\n") section.what.ToString(indent), "\n")