From 591caeb216128675ce6b8ddafccb09df7f522145 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Sun, 11 Apr 2021 19:55:24 -0700 Subject: 12.4 Methods on Classes --- src/com/craftinginterpreters/lox/LoxClass.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/com/craftinginterpreters/lox/LoxClass.java') diff --git a/src/com/craftinginterpreters/lox/LoxClass.java b/src/com/craftinginterpreters/lox/LoxClass.java index 4f7ef4f..0c0223f 100644 --- a/src/com/craftinginterpreters/lox/LoxClass.java +++ b/src/com/craftinginterpreters/lox/LoxClass.java @@ -1,12 +1,23 @@ package com.craftinginterpreters.lox; import java.util.List; +import java.util.Map; class LoxClass implements LoxCallable { final String name; + private final Map methods; - LoxClass(String name) { + LoxClass(String name, Map methods) { this.name = name; + this.methods = methods; + } + + LoxFunction findMethod(String name) { + if (methods.containsKey(name)) { + return methods.get(name); + } + + return null; } @Override -- cgit v1.2.3-54-g00ecf