aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux.lux
diff options
context:
space:
mode:
authorEduardo Julian2021-09-14 02:01:49 -0400
committerEduardo Julian2021-09-14 02:01:49 -0400
commit1c93f003f73116202b1f964b0d1b6d3f07b69fb0 (patch)
tree925f64cd59ab2ce48bccf6dd4df1142296d2094a /stdlib/source/library/lux.lux
parentbca1a9cdcf837e184378d5e6339a969e40d1dbab (diff)
No more "^slots".
Diffstat (limited to 'stdlib/source/library/lux.lux')
-rw-r--r--stdlib/source/library/lux.lux39
1 files changed, 0 insertions, 39 deletions
diff --git a/stdlib/source/library/lux.lux b/stdlib/source/library/lux.lux
index c488444dd..862c84fff 100644
--- a/stdlib/source/library/lux.lux
+++ b/stdlib/source/library/lux.lux
@@ -4339,45 +4339,6 @@
{#None}
(failure "Wrong syntax for loop"))))
-(macro: .public (^slots tokens)
- (case tokens
- (^ (list& [_ {#Form (list [_ {#Tuple (list& hslot' tslots')}])}] body branches))
- (do meta_monad
- [slots (: (Meta [Symbol (List Symbol)])
- (case (: (Maybe [Symbol (List Symbol)])
- (do maybe_monad
- [hslot (..identifier_name hslot')
- tslots (monad#each maybe_monad ..identifier_name tslots')]
- (in [hslot tslots])))
- {#Some slots}
- (in_meta slots)
-
- {#None}
- (failure "Wrong syntax for ^slots")))
- .let [[hslot tslots] slots]
- hslot (..normal hslot)
- tslots (monad#each meta_monad ..normal tslots)
- output (..type_slot hslot)
- g!_ (..identifier "_")
- .let [[idx tags exported? type] output
- slot_pairings (list#each (: (-> Symbol [Text Code])
- (function (_ [module name])
- [name (local_identifier$ name)]))
- (list& hslot tslots))
- pattern (|> tags
- (list#each (: (-> Symbol (List Code))
- (function (_ [module name])
- (let [tag (identifier$ [module name])]
- (case (plist#value name slot_pairings)
- {#Some binding} (list tag binding)
- {#None} (list tag g!_))))))
- list#conjoint
- tuple$)]]
- (in_meta (list& pattern body branches)))
-
- _
- (failure "Wrong syntax for ^slots")))
-
(def: (with_expansions' label tokens target)
(-> Text (List Code) Code (List Code))
(case target