(annotate-case {:keys [locals assumptions] :as ctx} node)Inputs: [{:keys [locals assumptions], :as ctx} :- s/Any node :- aas/CaseNode] Returns: aas/AnnotatedNode
Inputs: [{:keys [locals assumptions], :as ctx} :- s/Any node :- aas/CaseNode]
Returns: aas/AnnotatedNode(annotate-case-one-then anchor-prov
ctx
locals
assumptions
i
tests
thens
discriminator
use-conditional?
cond-branches)Inputs: [anchor-prov :- provs/Provenance ctx :- s/Any locals :- s/Any assumptions :- s/Any i :- s/Int tests :- [s/Any] thens :- [s/Any] discriminator :- s/Any use-conditional? :- s/Any cond-branches :- s/Any] Returns: s/Any
Inputs: [anchor-prov :- provs/Provenance ctx :- s/Any locals :- s/Any assumptions :- s/Any i :- s/Int tests :- [s/Any] thens :- [s/Any] discriminator :- s/Any use-conditional? :- s/Any cond-branches :- s/Any] Returns: s/Any
(case-assumption-root-for-local ctx target)Inputs: [ctx :- s/Any target :- s/Any] Returns: (s/maybe aos/RootOrigin)
Inputs: [ctx :- s/Any target :- s/Any] Returns: (s/maybe aos/RootOrigin)
(case-conditional-branches-from-type type)Inputs: [type :- ats/SemanticType] Returns: (s/maybe s/Any)
Inputs: [type :- ats/SemanticType] Returns: (s/maybe s/Any)
(case-conditional-default-narrow anchor-prov branches discriminator all-lits)Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any all-lits :- [s/Any]] Returns: ats/SemanticType
Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any all-lits :- [s/Any]] Returns: ats/SemanticType
(case-conditional-narrow-for-lits anchor-prov branches discriminator lits)Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any lits :- [s/Any]] Returns: ats/SemanticType
Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any lits :- [s/Any]] Returns: ats/SemanticType
(case-discriminant-expr-node test-node)Inputs: [test-node :- s/Any] Returns: s/Any
Inputs: [test-node :- s/Any] Returns: s/Any
(case-discriminant-leaf-node node)Inputs: [node :- s/Any] Returns: s/Any
Inputs: [node :- s/Any] Returns: s/Any
(case-kw-and-target node)Inputs: [node :- s/Any] Returns: (s/maybe [s/Any])
Inputs: [node :- s/Any] Returns: (s/maybe [s/Any])
(case-kw-root-info ctx test-node)Inputs: [ctx :- s/Any test-node :- s/Any] Returns: (s/maybe #:s{Keyword s/Any})
Inputs: [ctx :- s/Any test-node :- s/Any]
Returns: (s/maybe #:s{Keyword s/Any})(case-predicate-matches-lit? pred kw lit)Inputs: [pred :- s/Any kw :- s/Any lit :- s/Any] Returns: s/Bool
Inputs: [pred :- s/Any kw :- s/Any lit :- s/Any] Returns: s/Bool
(case-predicate-test-map kw lit)Inputs: [kw :- s/Any lit :- s/Any] Returns: #:s{Any s/Any}
Inputs: [kw :- s/Any lit :- s/Any]
Returns: #:s{Any s/Any}(case-test-literal-nodes case-test-entry)Inputs: [case-test-entry :- s/Any] Returns: (s/maybe [s/Any])
Inputs: [case-test-entry :- s/Any] Returns: (s/maybe [s/Any])
(case-test-literals case-test-node)Inputs: [case-test-node :- s/Any] Returns: [s/Any]
Inputs: [case-test-node :- s/Any] Returns: [s/Any]
(narrow-conditional-by-discriminator anchor-prov branches discriminator lits)Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any lits :- [s/Any]] Returns: ats/SemanticType
Pick branches of branches whose pred matches each literal in lits
against discriminator (path vector or discriminator info map). Returns
a union of selected branch types.
Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any lits :- [s/Any]] Returns: ats/SemanticType Pick branches of `branches` whose pred matches each literal in `lits` against `discriminator` (path vector or discriminator info map). Returns a union of selected branch types.
(narrow-conditional-default anchor-prov branches discriminator lits)Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any lits :- [s/Any]] Returns: ats/SemanticType
Default-branch counterpart: returns the union of branch types whose
preds did NOT match any of lits.
Inputs: [anchor-prov :- provs/Provenance branches :- s/Any discriminator :- s/Any lits :- [s/Any]] Returns: ats/SemanticType Default-branch counterpart: returns the union of branch types whose preds did NOT match any of `lits`.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |