From 62bd0f83dc909547a69abb8b0aed40cf098b4c95 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Tue, 15 Jun 2021 23:18:29 -0700 Subject: 13.3 Calling Superclass Methods --- src/com/craftinginterpreters/lox/Parser.java | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/com/craftinginterpreters/lox/Parser.java') diff --git a/src/com/craftinginterpreters/lox/Parser.java b/src/com/craftinginterpreters/lox/Parser.java index 3150035..ab4baaa 100644 --- a/src/com/craftinginterpreters/lox/Parser.java +++ b/src/com/craftinginterpreters/lox/Parser.java @@ -362,6 +362,13 @@ class Parser { return new Expr.Literal(previous().literal); } + if (match(SUPER)) { + Token keyword = previous(); + consume(DOT, "Expect '.' after 'super'."); + Token method = consume(IDENTIFIER, "Expect superclass method name."); + return new Expr.Super(keyword, method); + } + if (match(THIS)) return new Expr.This(previous()); -- cgit v1.2.3-54-g00ecf