aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--elymas/lib/wrapper.ey16
-rw-r--r--examples/working-loaded/wrapper.test2
2 files changed, 12 insertions, 6 deletions
diff --git a/elymas/lib/wrapper.ey b/elymas/lib/wrapper.ey
index 144125b..73f8b64 100644
--- a/elymas/lib/wrapper.ey
+++ b/elymas/lib/wrapper.ey
@@ -1,10 +1,14 @@
{ ==v ==source
- /has source keys eq any {
- { /d defvs d source .has { d source * } { v } ? * }
- } {
- { /d defvs d source dom eq any { d source * } { v } ? * }
- } ? *
- < "#*" deffst source >'
+ <
+ /has source keys eq any {
+ { /d defvs d source .has { d source * } { v } ? * }
+ } {
+ { /d defvs d source dom eq any { d source * } { v } ? * }
+ } ? * "#*" deffst
+ { source -01 . } "#." deffst # TODO: think about instantiating all keys explicitely
+ { source -01 .| } "#.|" deffst
+ { source -01 .? } "#.?" deffst
+ >
} /default deffd
# vim: syn=elymas
diff --git a/examples/working-loaded/wrapper.test b/examples/working-loaded/wrapper.test
index 321823c..112a291 100644
--- a/examples/working-loaded/wrapper.test
+++ b/examples/working-loaded/wrapper.test
@@ -4,6 +4,7 @@ m 7 default ==md
5 /foo md =[]
/foo md * dump
/bar md * dump
+md dom dump
list ==l
l 7 default ==ld
@@ -11,3 +12,4 @@ l 7 default ==ld
5 ld .append1
0 ld * dump
12 ld * dump
+ld dom dump