mirror of
https://github.com/janet-lang/janet
synced 2025-10-21 02:37:49 +00:00
Merge branch 'redefs-work'
- Change the global binding name from :redefs to :redef - Simplify internal representation of "redefinable bindings" - Store "redefinable bindings in :ref rather than :value inside the environment entries. This makes such bindings more like vars that can't be set rather than defs.
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
(def str (string e))
|
||||
(if x
|
||||
(when is-verbose (eprintf "\e[32m✔\e[0m %s: %v" (describe e) x))
|
||||
(eprintf "\n\e[31m✘\e[0m %s: %v" (describe e) x))
|
||||
(eprintf "\e[31m✘\e[0m %s: %v" (describe e) x))
|
||||
x)
|
||||
|
||||
(defmacro assert-error
|
||||
|
@@ -307,7 +307,7 @@
|
||||
(assert (= 1 (dynamicdef1-inc)) "before redefinition with :redef")
|
||||
(def dynamicdef1 :redef 1)
|
||||
(assert (= 2 (dynamicdef1-inc)) "after redefinition with :redef")
|
||||
(setdyn :redefs true)
|
||||
(setdyn :redef true)
|
||||
(def staticdef2 {:redef false} 0)
|
||||
(defn staticdef2-inc [] (+ 1 staticdef2))
|
||||
(assert (= 1 (staticdef2-inc)) "before redefinition with :redef false")
|
||||
@@ -318,7 +318,7 @@
|
||||
(assert (= 1 (dynamicdef2-inc)) "before redefinition with dyn :redefs")
|
||||
(def dynamicdef2 1)
|
||||
(assert (= 2 (dynamicdef2-inc)) "after redefinition with dyn :redefs")
|
||||
(setdyn :redefs nil)
|
||||
(setdyn :redef nil)
|
||||
|
||||
# Denormal tables and structs
|
||||
|
||||
|
Reference in New Issue
Block a user