diff options
| author | Drahflow <drahflow@gmx.de> | 2015-12-14 10:55:05 +0100 |
|---|---|---|
| committer | Drahflow <drahflow@gmx.de> | 2015-12-14 10:55:05 +0100 |
| commit | 41cd367f19df069a9c58b42828a135b53512f789 (patch) | |
| tree | c691a626fd4b535fc3111d95bde2af5bf37c5b98 | |
| parent | 6c169b869dc5d97c3bdd05c87c828471bc29ef1c (diff) | |
Wrapper for default values
| -rw-r--r-- | elymas/lib/wrapper.ey | 10 | ||||
| -rw-r--r-- | elymas/loaded.ey | 1 | ||||
| -rw-r--r-- | elymas/shared.ey | 1 | ||||
| -rw-r--r-- | examples/working-loaded/wrapper.test | 13 |
4 files changed, 25 insertions, 0 deletions
diff --git a/elymas/lib/wrapper.ey b/elymas/lib/wrapper.ey new file mode 100644 index 0000000..144125b --- /dev/null +++ b/elymas/lib/wrapper.ey @@ -0,0 +1,10 @@ +{ ==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 >' +} /default deffd + +# vim: syn=elymas diff --git a/elymas/loaded.ey b/elymas/loaded.ey index 7fa3945..b422637 100644 --- a/elymas/loaded.ey +++ b/elymas/loaded.ey @@ -19,6 +19,7 @@ "lib/list.ey" "lib/map.ey" "lib/tree.ey" + "lib/wrapper.ey" "lib/sort.ey" "lib/crypt.ey" ] { _ dump include }' each diff --git a/elymas/shared.ey b/elymas/shared.ey index 06f18f9..0770612 100644 --- a/elymas/shared.ey +++ b/elymas/shared.ey @@ -20,6 +20,7 @@ "lib/list.ey" "lib/map.ey" "lib/tree.ey" + "lib/wrapper.ey" "lib/sort.ey" "lib/crypt.ey" ] { _ dump include }' each diff --git a/examples/working-loaded/wrapper.test b/examples/working-loaded/wrapper.test new file mode 100644 index 0000000..321823c --- /dev/null +++ b/examples/working-loaded/wrapper.test @@ -0,0 +1,13 @@ +map ==m +m 7 default ==md + +5 /foo md =[] +/foo md * dump +/bar md * dump + +list ==l +l 7 default ==ld + +5 ld .append1 +0 ld * dump +12 ld * dump |
