aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux')
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux18
1 files changed, 10 insertions, 8 deletions
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
index 21cf02c95..59193e0c8 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
@@ -15,6 +15,8 @@
[collection
["[0]" list ("[1]#[0]" functor)]
["[0]" dictionary {"+" Dictionary}]]]
+ [macro
+ ["^" pattern]]
[math
[number
["n" nat]]]
@@ -135,7 +137,7 @@
Handler
(function (_ extension_name analyse archive args)
(case args
- (^ (list opC))
+ (pattern (list opC))
(<| typeA.with_var
(function (_ [@var :var:]))
(do [! ////.monad]
@@ -152,7 +154,7 @@
Handler
(function (_ extension_name analyse archive argsC+)
(case argsC+
- (^ (list [_ {.#Text module_name}] exprC))
+ (pattern (list [_ {.#Text module_name}] exprC))
(////analysis.with_current_module module_name
(analyse archive exprC))
@@ -163,7 +165,7 @@
(-> Eval Handler)
(function (_ extension_name analyse archive args)
(case args
- (^ (list typeC valueC))
+ (pattern (list typeC valueC))
(do [! ////.monad]
[actualT (# ! each (|>> (:as Type))
(eval archive Type typeC))
@@ -178,7 +180,7 @@
(-> Eval Handler)
(function (_ extension_name analyse archive args)
(case args
- (^ (list typeC valueC))
+ (pattern (list typeC valueC))
(do [! ////.monad]
[actualT (# ! each (|>> (:as Type))
(eval archive Type typeC))
@@ -215,12 +217,12 @@
(do !
[input_type (///.lifted (meta.definition (symbol .Macro')))]
(case input_type
- (^or {.#Definition [exported? def_type def_value]}
- {.#Type [exported? def_value labels]})
+ (^.or {.#Definition [exported? def_type def_value]}
+ {.#Type [exported? def_value labels]})
(in (:as Type def_value))
- (^or {.#Tag _}
- {.#Slot _})
+ (^.or {.#Tag _}
+ {.#Slot _})
(////.failure (exception.error ..not_a_type [(symbol .Macro')]))
{.#Alias real_name}