aboutsummaryrefslogtreecommitdiff
path: root/src/cljcc/analyze
diff options
context:
space:
mode:
authorShagun Agrawal <agrawalshagun07@gmail.com>2024-12-01 22:27:54 +0530
committerShagun Agrawal <agrawalshagun07@gmail.com>2024-12-01 22:27:54 +0530
commit70314ca6f691ea1f547f09d3044a7f2b2a684289 (patch)
tree2a6339a2e3d3628115db21bb2cd007cd4ca4cbe1 /src/cljcc/analyze
parent38642b31168135f7bb70668d5d3e4cebd7dd5074 (diff)
Validate typechecker output with Malli
Diffstat (limited to 'src/cljcc/analyze')
-rw-r--r--src/cljcc/analyze/typecheck.clj10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/cljcc/analyze/typecheck.clj b/src/cljcc/analyze/typecheck.clj
index 9390f3d..001c618 100644
--- a/src/cljcc/analyze/typecheck.clj
+++ b/src/cljcc/analyze/typecheck.clj
@@ -532,9 +532,13 @@
A program is a list of declarations."
[program]
- (let [v (typecheck-program program)]
- {:program (:program v)
- :ident->symbol (dissoc (:ident->symbol v) :at-top-level)}))
+ (let [v (typecheck-program program)
+ program (:program v)
+ m (dissoc (:ident->symbol v) :at-top-level)
+ _ (m/coerce p/Program program)
+ _ (m/coerce SymbolMap m)]
+ {:program program
+ :ident->symbol m}))
(comment