Documentation

Lake.Toml.Elab.Expression

TOML Expression Elaboration #

Elaborates top-level TOML syntax into a Lean Toml.Table.

The manner in which a TOML key was declared.

  • value : KeyTy

    A key declared via key = v.

  • stdTable : KeyTy

    A key declared via [key].

  • array : KeyTy

    A key declared via [[key]].

  • dottedPrefix : KeyTy

    A key declared via key.foo.

  • headerPrefix : KeyTy

    A key declared via [key.foo] or [[key.foo]].

Instances For
Equations
def Lake.Toml.elabSubKeys (ks : Array (Lean.TSyntax `Lake.Toml.simpleKey)) :
Equations
  • One or more equations did not get rendered due to their size.
def Lake.Toml.elabKeyval (kv : Lean.TSyntax `Lake.Toml.keyval) :
Equations
  • One or more equations did not get rendered due to their size.
Equations
  • One or more equations did not get rendered due to their size.
def Lake.Toml.elabStdTable (x : Lean.TSyntax `Lake.Toml.stdTable) :
Equations
  • One or more equations did not get rendered due to their size.
def Lake.Toml.elabArrayTable (x : Lean.TSyntax `Lake.Toml.arrayTable) :
Equations
  • One or more equations did not get rendered due to their size.
def Lake.Toml.elabExpression (x : Lean.TSyntax `Lake.Toml.expression) :
Equations
  • One or more equations did not get rendered due to their size.

Construct a table of simple key-value pairs from arbitrary key-value pairs.

For example:

{a.b := [c.d := 0]}, {a.b := [c.e := 1]}

becomes

{a := {b := [{c := {d := 0, e := 1}}]}}

Equations
  • One or more equations did not get rendered due to their size.
partial def Lake.Toml.mkSimpleTable.insert (t : Table) (kRef : Lean.Syntax) (k : Lean.Name) (ks : List Lean.Name) (newV : Value) :
Equations
def Lake.Toml.elabToml (x : Lean.TSyntax `Lake.Toml.toml) :
Equations
  • One or more equations did not get rendered due to their size.