Documentation

Lake.Config.TargetConfig

structure Lake.TargetConfig (pkgName name : Lean.Name) :

A custom target's declarative configuration.

Instances For
    Equations
    • Lake.instInhabitedTargetConfig = { default := { build := default, getJob := default } }
    @[inline]
    def Lake.mkTargetJobConfig {pkgName : Lean.Name} {α : Type} {name : Lean.Name} (build : Lake.NPackage pkgNameLake.FetchM (Lake.BuildJob α)) [h : Lake.FamilyOut Lake.CustomData (pkgName, name) (Lake.BuildJob α)] :
    Lake.TargetConfig pkgName name

    A smart constructor for target configurations that generate CLI targets.

    Equations
    Instances For

      A dependently typed configuration based on its registered package and name.

      Instances For
        Equations
        unsafe def Lake.OpaqueTargetConfig.unsafeGet {pkgName name : Lean.Name} :
        Lake.OpaqueTargetConfig pkgName nameLake.TargetConfig pkgName name
        Instances For
          Equations
          • Lake.OpaqueTargetConfig.instCoeNameTargetConfig = { coe := Lake.OpaqueTargetConfig.get }
          Equations
          • Lake.OpaqueTargetConfig.instCoeTargetConfigName = { coe := Lake.OpaqueTargetConfig.mk }
          @[implemented_by Lake.OpaqueTargetConfig.unsafeMk]
          opaque Lake.OpaqueTargetConfig.mk {pkgName name : Lean.Name} :
          Lake.TargetConfig pkgName nameLake.OpaqueTargetConfig pkgName name
          unsafe def Lake.OpaqueTargetConfig.unsafeMk {pkgName name : Lean.Name} :
          Lake.TargetConfig pkgName nameLake.OpaqueTargetConfig pkgName name
          Instances For
            @[implemented_by Lake.OpaqueTargetConfig.unsafeGet]
            opaque Lake.OpaqueTargetConfig.get {pkgName name : Lean.Name} :
            Lake.OpaqueTargetConfig pkgName nameLake.TargetConfig pkgName name

            Try to find a target configuration in the package with the given name .

            Equations
            Instances For