Lean2Js.Builder
Notation for writing Core terms #
Notation for writing Core terms.
Shadowing Lean's own operators would make it unreadable whether a line builds an AST or computes a Lean
value, so every one of these is a separate symbol carrying a '.
Lean2Js.Core.Builder.v
sourceEquations
- Lean2Js.Core.Builder.v name = Lean2Js.Core.Expr.var name
Instances For
Used by
Lean2Js.Core.Builder.bool
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.int53
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.uint32
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.str
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.bigint
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.«term_+'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_-'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_*'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_/'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_%'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_++'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_<'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_≤'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_>'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_≥'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_=='_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_≠'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_&&'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.«term_||'_»
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.not'
sourceInstances For
Used by
Lean2Js.Core.Builder.neg'
sourceInstances For
Used by
Lean2Js.Core.Builder.abs'
sourceInstances For
Used by
Lean2Js.Core.Builder.toString'
sourceInstances For
Used by
Lean2Js.Core.Builder.range'
sourceInstances For
Used by
Lean2Js.Core.Builder.min'
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.max'
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.fnRef
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.ite'
sourceEquations
- Lean2Js.Core.Builder.ite' c t e = c.cond t e
Instances For
Used by
Lean2Js.Core.Builder.letIn
sourceEquations
- Lean2Js.Core.Builder.letIn name ty val body = Lean2Js.Core.Expr.letE name ty val body
Instances For
Used by
Lean2Js.Core.Builder.call
sourceEquations
- Lean2Js.Core.Builder.call fn args = Lean2Js.Core.Expr.call fn args
Instances For
Used by
Lean2Js.Core.Builder.ctor
sourceEquations
- Lean2Js.Core.Builder.ctor typeName tyArgs ctorName args = Lean2Js.Core.Expr.ctor typeName tyArgs ctorName args
Instances For
Used by
Lean2Js.Core.Builder.proj
sourceEquations
- Lean2Js.Core.Builder.proj e field = e.proj field
Instances For
Used by
Lean2Js.Core.Builder.matchOn
sourceEquations
- Lean2Js.Core.Builder.matchOn scrut alts = scrut.matchE alts
Instances For
Used by
Lean2Js.Core.Builder.none'
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.some'
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.ok'
sourceEquations
- Lean2Js.Core.Builder.ok' err e = Lean2Js.Core.Expr.okE err e
Instances For
Used by
Lean2Js.Core.Builder.error'
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.array
sourceEquations
- Lean2Js.Core.Builder.array elem items = Lean2Js.Core.Expr.arrayLit elem items
Instances For
Used by
Lean2Js.Core.Builder.at'
sourceEquations
- Lean2Js.Core.Builder.at' arr idx = arr.index idx
Instances For
Used by
Lean2Js.Core.Builder.len
sourceEquations
- Lean2Js.Core.Builder.len arr = arr.length
Instances For
Used by
Lean2Js.Core.Builder.arraySlice
sourceEquations
- Lean2Js.Core.Builder.arraySlice arr lo hi = arr.arraySlice lo hi
Instances For
Used by
Lean2Js.Core.Builder.arrayReverse
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.map'
sourceEquations
- Lean2Js.Core.Builder.map' arr binder body = arr.mapE binder body
Instances For
Used by
Lean2Js.Core.Builder.filter'
sourceEquations
- Lean2Js.Core.Builder.filter' arr binder body = arr.filterE binder body
Instances For
Used by
Lean2Js.Core.Builder.sortByKey'
sourceEquations
- Lean2Js.Core.Builder.sortByKey' arr binder body = arr.sortByKeyE binder body
Instances For
Used by
Lean2Js.Core.Builder.find'
sourceEquations
- Lean2Js.Core.Builder.find' arr binder body = arr.findE binder body
Instances For
Used by
Lean2Js.Core.Builder.all'
sourceEquations
- Lean2Js.Core.Builder.all' arr binder body = Lean2Js.Core.Expr.quantE Lean2Js.Core.QuantOp.all arr binder body
Instances For
Used by
Lean2Js.Core.Builder.any'
sourceEquations
- Lean2Js.Core.Builder.any' arr binder body = Lean2Js.Core.Expr.quantE Lean2Js.Core.QuantOp.any arr binder body
Instances For
Used by
Lean2Js.Core.Builder.reduce'
sourceEquations
- Lean2Js.Core.Builder.reduce' arr init accName elemName body = arr.reduceE init accName elemName body
Instances For
Used by
Lean2Js.Core.Builder.dict
sourceEquations
- Lean2Js.Core.Builder.dict value entries = Lean2Js.Core.Expr.dictLit value false entries
Instances For
Used by
Lean2Js.Core.Builder.dictGet
sourceEquations
- Lean2Js.Core.Builder.dictGet d key = d.dictGet key
Instances For
Used by
Lean2Js.Core.Builder.dictHas
sourceEquations
- Lean2Js.Core.Builder.dictHas d key = d.dictHas key
Instances For
Used by
Lean2Js.Core.Builder.dictSet
sourceEquations
- Lean2Js.Core.Builder.dictSet d key val = d.dictSet key val
Instances For
Used by
Lean2Js.Core.Builder.dictKeys
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.dictValues
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.dictDelete
sourceEquations
- Lean2Js.Core.Builder.dictDelete d key = d.dictDelete key
Instances For
Used by
Lean2Js.Core.Builder.trim
sourceInstances For
Used by
Lean2Js.Core.Builder.upper
sourceInstances For
Used by
Lean2Js.Core.Builder.lower
sourceInstances For
Used by
Lean2Js.Core.Builder.toInt
sourceInstances For
Used by
Lean2Js.Core.Builder.startsWith
sourceEquations
- Lean2Js.Core.Builder.startsWith s prefix' = Lean2Js.Core.Expr.strBin Lean2Js.Core.StrBinOp.startsWith s prefix'
Instances For
Used by
Lean2Js.Core.Builder.indexOf
sourceEquations
- Lean2Js.Core.Builder.indexOf s needle = Lean2Js.Core.Expr.strBin Lean2Js.Core.StrBinOp.indexOf s needle
Instances For
Used by
Lean2Js.Core.Builder.join
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.repeat
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.endsWith
sourceEquations
- Lean2Js.Core.Builder.endsWith s suffix = Lean2Js.Core.Expr.strBin Lean2Js.Core.StrBinOp.endsWith s suffix
Instances For
Used by
Lean2Js.Core.Builder.includes
sourceEquations
- Lean2Js.Core.Builder.includes s needle = Lean2Js.Core.Expr.strBin Lean2Js.Core.StrBinOp.includes s needle
Instances For
Used by
Lean2Js.Core.Builder.split
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.substring
sourceEquations
- Lean2Js.Core.Builder.substring s lo hi = s.substring lo hi
Instances For
Used by
Lean2Js.Core.Builder.foldOn
sourceA fold over a value of a declared type. What the alternatives are handed is the node with every
field that came round replaced by the answer for it, so result is part of the form.
Equations
- Lean2Js.Core.Builder.foldOn scrut typeName tyArgs result alts = scrut.foldE typeName tyArgs result alts
Instances For
Used by
Lean2Js.Core.Builder.pWild
source :
Instances For
Used by
Lean2Js.Core.Builder.pBind
sourceEquations
- Lean2Js.Core.Builder.pBind name = Lean2Js.Core.Pat.bind name
Instances For
Used by
Lean2Js.Core.Builder.pBool
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.pInt53
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.pUint32
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.pStr
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.pBigint
sourceEquations
Instances For
Used by
Lean2Js.Core.Builder.pCtor
sourceEquations
- Lean2Js.Core.Builder.pCtor ctorName args = Lean2Js.Core.Pat.ctor ctorName args
Instances For
Used by
Lean2Js.Core.Builder.alt
sourceThe arm that names every field of one constructor, which is what most arms are.
Equations
- Lean2Js.Core.Builder.alt ctorName binders body = (Lean2Js.Core.Pat.ctor ctorName (List.map Lean2Js.Core.Pat.bind binders), body)
Instances For
Used by
Lean2Js.Core.Builder.altP
sourceEquations
- Lean2Js.Core.Builder.altP pat body = (pat, body)
Instances For
Used by
Lean2Js.Core.Builder.decl
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.struct
sourceEquations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Lean2Js.Core.Builder.enum
sourceEquations
- One or more equations did not get rendered due to their size.