Procházet zdrojové kódy

Parsing Return Statement--AST

runningwater před 3 roky
rodič
revize
fb05623fd6
1 změnil soubory, kde provedl 14 přidání a 0 odebrání
  1. 14 0
      ast/ast.go

+ 14 - 0
ast/ast.go

@@ -82,3 +82,17 @@ func (i *Identifier) expressionNode() {
 func (i *Identifier) TokenLiteral() string {
 	return i.Token.Literal
 }
+
+// return <expression>;
+type ReturnStatement struct {
+	Token       token.Token // the token.RETURN
+	returnValue Expression
+}
+
+func (rs *ReturnStatement) TokenLiteral() string {
+	return rs.Token.Literal
+}
+
+func (rs *ReturnStatement) statementNode() {
+	panic("implement me")
+}