diff options
author | Elizabeth (Lizzy) Hunt <elizabeth.hunt@simponic.xyz> | 2023-11-17 12:13:30 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-17 12:13:30 -0700 |
commit | eaca9073ebf8a438ec8474f15171a62082fa141b (patch) | |
tree | 371b06e288a85c14fccd785008c7abfe586a6471 /godel/js/observable.js | |
parent | 1aefa0f9b1da1c7bb99f7605c334eaf691ba2fda (diff) | |
parent | 57a4d439847bf3d63513b2443dfdf1eca5ecbb02 (diff) | |
download | simponic.xyz-eaca9073ebf8a438ec8474f15171a62082fa141b.tar.gz simponic.xyz-eaca9073ebf8a438ec8474f15171a62082fa141b.zip |
Merge pull request #3 from Simponic/godel
L-Program and Godel Numbers
Diffstat (limited to 'godel/js/observable.js')
-rw-r--r-- | godel/js/observable.js | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/godel/js/observable.js b/godel/js/observable.js new file mode 100644 index 0000000..1299fc6 --- /dev/null +++ b/godel/js/observable.js @@ -0,0 +1,14 @@ +class Observable { + constructor() { + this.observers = []; + } + subscribe(f) { + this.observers.push(f); + } + unsubscribe(f) { + this.observers = this.observers.filter((subscriber) => subscriber !== f); + } + notify(data) { + this.observers.forEach((observer) => observer(data)); + } +} |