From b52f4e9b4140f482ad966aa354b39cd305a212ec Mon Sep 17 00:00:00 2001 From: Bobby Date: Mon, 4 Mar 2024 09:07:29 -0500 Subject: LetStatements --- object/environment.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 object/environment.go (limited to 'object') diff --git a/object/environment.go b/object/environment.go new file mode 100644 index 0000000..4b37749 --- /dev/null +++ b/object/environment.go @@ -0,0 +1,20 @@ +package object + +func NewEnvironment() *Environment { + s := make(map[string]Object) + return &Environment{store: s} +} + +type Environment struct { + store map[string]Object +} + +func (e *Environment) Get(name string) (Object, bool) { + obj, ok := e.store[name] + return obj, ok +} + +func (e *Environment) Set(name string, val Object) Object { + e.store[name] = val + return val +} -- cgit v1.2.3