diff options
author | Eduardo Julian | 2022-10-01 18:39:48 -0400 |
---|---|---|
committer | Eduardo Julian | 2022-10-01 18:39:48 -0400 |
commit | 0b2294bc184b1ed3e82dc00096e9971245239e2c (patch) | |
tree | b3e0421bb7736d09562291118a562e15fd4f1ede /stdlib/source/test | |
parent | 53704218a3705132dbe807a8ef54f938809f84d5 (diff) |
New format for extensions [part 1]
Diffstat (limited to 'stdlib/source/test')
-rw-r--r-- | stdlib/source/test/lux/meta/extension.lux | 45 |
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)) |