aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test
diff options
context:
space:
mode:
authorEduardo Julian2022-10-01 18:39:48 -0400
committerEduardo Julian2022-10-01 18:39:48 -0400
commit0b2294bc184b1ed3e82dc00096e9971245239e2c (patch)
treeb3e0421bb7736d09562291118a562e15fd4f1ede /stdlib/source/test
parent53704218a3705132dbe807a8ef54f938809f84d5 (diff)
New format for extensions [part 1]
Diffstat (limited to '')
-rw-r--r--stdlib/source/test/lux/meta/extension.lux45
1 files changed, 26 insertions, 19 deletions
diff --git a/stdlib/source/test/lux/meta/extension.lux b/stdlib/source/test/lux/meta/extension.lux
index 419570970..44d884440 100644
--- a/stdlib/source/test/lux/meta/extension.lux
+++ b/stdlib/source/test/lux/meta/extension.lux
@@ -94,14 +94,16 @@
(phase archive pass_through))
... Synthesis
+ (def my_synthesis|synthesis
+ Synthesis
+ (synthesis (_ self phase archive [pass_through <analysis>.any])
+ (phase archive pass_through)))
+
(analysis (..my_synthesis self phase archive [parameters (<>.some <code>.any)])
(let [! phase.monad]
(|> parameters
(monad.each ! (phase archive))
- (at ! each (|>> {analysis.#Extension self})))))
-
- (synthesis (..my_synthesis self phase archive [pass_through <analysis>.any])
- (phase archive pass_through))
+ (at ! each (|>> {analysis.#Extension (symbol ..my_synthesis|synthesis)})))))
... Generation
(def my_generation|generation
@@ -109,17 +111,19 @@
(generation (_ self phase archive [pass_through <synthesis>.any])
(phase archive pass_through)))
- (analysis (..my_generation self phase archive [parameters (<>.some <code>.any)])
- (let [! phase.monad]
- (|> parameters
- (monad.each ! (phase archive))
- (at ! each (|>> {analysis.#Extension self})))))
+ (def my_generation|synthesis
+ Synthesis
+ (synthesis (_ self phase archive [parameters (<>.some <analysis>.any)])
+ (let [! phase.monad]
+ (|> parameters
+ (monad.each ! (phase archive))
+ (at ! each (|>> {synthesis.#Extension (symbol ..my_generation|generation)}))))))
- (synthesis (..my_generation self phase archive [parameters (<>.some <analysis>.any)])
+ (analysis (..my_generation self phase archive [parameters (<>.some <code>.any)])
(let [! phase.monad]
(|> parameters
(monad.each ! (phase archive))
- (at ! each (|>> {synthesis.#Extension (symbol ..my_generation|generation)})))))
+ (at ! each (|>> {analysis.#Extension (symbol ..my_generation|synthesis)})))))
(def dummy_generation|generation
Generation
@@ -134,11 +138,13 @@
@.php (php.string self)
@.scheme (scheme.string self))))))
- (analysis (..dummy_generation self phase archive [])
- (at phase.monad in {analysis.#Extension self (list)}))
+ (def dummy_generation|synthesis
+ Synthesis
+ (synthesis (_ self phase archive [])
+ (at phase.monad in {synthesis.#Extension (symbol ..dummy_generation|generation) (list)})))
- (synthesis (..dummy_generation self phase archive [])
- (at phase.monad in {synthesis.#Extension (symbol ..dummy_generation|generation) (list)}))
+ (analysis (..dummy_generation self phase archive [])
+ (at phase.monad in {analysis.#Extension (symbol ..dummy_generation|synthesis) (list)}))
... Declaration
(declaration (..my_declaration self phase archive [expression <code>.any])
@@ -148,13 +154,14 @@
(type.expecting .Any)
(analysis_phase archive expression))
- synthesis_phase declaration.synthesis
- expressionS (declaration.lifted_synthesis
- (synthesis_phase archive expressionA))
-
lux (<| declaration.lifted_analysis
extension.lifted
meta.compiler_state)
+
+ synthesis_phase declaration.synthesis
+ expressionS (declaration.lifted_synthesis
+ (synthesis_phase lux archive expressionA))
+
generation_phase declaration.generation
expressionG (declaration.lifted_generation
(generation_phase lux archive expressionS))