Documentation

Lake.Config.FacetConfig

structure Lake.FacetConfig (DataFam : Lean.NameType) (ι : Type) (name : Lean.Name) :

A facet's declarative configuration.

  • build : ιLake.FetchM (DataFam name)

    The facet's build (function).

  • getJob? : Option (DataFam nameLake.BuildJob Unit)

    Does this facet produce an associated asynchronous job?

Instances For
    instance Lake.instInhabitedFacetConfig {a✝ : Lean.NameType} {a✝¹ : Type} {a✝² : Lean.Name} :
    Inhabited (Lake.FacetConfig a✝ a✝¹ a✝²)
    Equations
    • Lake.instInhabitedFacetConfig = { default := { build := default, getJob? := default } }
    @[reducible, inline]
    abbrev Lake.FacetConfig.name {DataFam : Lean.NameType} {ι : Type} {name : Lean.Name} :
    Lake.FacetConfig DataFam ι nameLean.Name
    Equations
    • x.name = name
    Instances For
      @[inline]
      def Lake.mkFacetConfig {ι α : Type} {Fam : Lean.NameType} {facet : Lean.Name} (build : ιLake.FetchM α) [h : Lake.FamilyOut Fam facet α] :
      Lake.FacetConfig Fam ι facet

      A smart constructor for facet configurations that are not known to generate targets.

      Equations
      Instances For
        @[inline]
        def Lake.mkFacetJobConfig {ι α : Type} {Fam : Lean.NameType} {facet : Lean.Name} (build : ιLake.FetchM (Lake.BuildJob α)) [h : Lake.FamilyOut Fam facet (Lake.BuildJob α)] :
        Lake.FacetConfig Fam ι facet

        A smart constructor for facet configurations that generate jobs for the CLI.

        Equations
        Instances For
          structure Lake.NamedConfigDecl (β : Lean.NameType u) :

          A dependently typed configuration based on its registered name.

          Instances For
            @[reducible, inline]

            A module facet's declarative configuration.

            Instances For
              @[reducible, inline]

              A module facet declaration from a configuration file.

              Instances For
                @[reducible, inline]

                A package facet's declarative configuration.

                Equations
                Instances For
                  @[reducible, inline]

                  A package facet declaration from a configuration file.

                  Instances For
                    @[reducible, inline]

                    A library facet's declarative configuration.

                    Instances For
                      @[reducible, inline]

                      A library facet declaration from a configuration file.

                      Equations
                      Instances For