File: .lake/packages/lean4/src/lean/lake/Lake/Reservoir.lean

full_name: Lake.RegistrySrc.other
code: /--
Package source information from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
inductive RegistrySrc
| git (data : JsonObject) (url : String)
  (githubUrl? defaultBranch? : Option String) (subDir? : Option FilePath)
| other (data : JsonObject)
deriving Inhabited
goal: Lake.RegistrySrc

full_name: Lake.RegistrySrc.git
code: /--
Package source information from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
inductive RegistrySrc
| git (data : JsonObject) (url : String)
  (githubUrl? defaultBranch? : Option String) (subDir? : Option FilePath)
| other (data : JsonObject)
deriving Inhabited
goal: Lake.RegistrySrc

full_name: Lake.RegistrySrc
code: /--
Package source information from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
inductive RegistrySrc
| git (data : JsonObject) (url : String)
  (githubUrl? defaultBranch? : Option String) (subDir? : Option FilePath)
| other (data : JsonObject)
deriving Inhabited
goal: Type

full_name: Lake.instInhabitedRegistrySrc
code: /--
Package source information from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
inductive RegistrySrc
| git (data : JsonObject) (url : String)
  (githubUrl? defaultBranch? : Option String) (subDir? : Option FilePath)
| other (data : JsonObject)
deriving Inhabited
goal: Inhabited Lake.RegistrySrc

full_name: Lake.RegistrySrc.isGit
code: def isGit (src : RegistrySrc) : Bool 
goal: Bool

full_name: Lake.RegistrySrc.data
code: def data (src : RegistrySrc) : JsonObject 
goal: Lake.JsonObject

full_name: Lake.RegistrySrc.toJson
code: protected def toJson (src : RegistrySrc) : Json 
goal: Lean.Json

full_name: Lake.RegistrySrc.instToJson
code: instance : ToJson RegistrySrc 
goal: Lean.ToJson Lake.RegistrySrc

full_name: Lake.RegistrySrc.fromJson?
code: protected def fromJson? (val : Json) : Except String RegistrySrc 
goal: Except String Lake.RegistrySrc

full_name: Lake.RegistrySrc.instFromJson
code: instance : FromJson RegistrySrc 
goal: Lean.FromJson Lake.RegistrySrc

full_name: Lake.RegistryPkg.fullName
code: /--
Package metadata from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
structure RegistryPkg where
  name : String
  fullName : String
  sources : Array RegistrySrc
  data : Json
  deriving Inhabited
goal: String

full_name: Lake.RegistryPkg.sources
code: /--
Package metadata from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
structure RegistryPkg where
  name : String
  fullName : String
  sources : Array RegistrySrc
  data : Json
  deriving Inhabited
goal: Array Lake.RegistrySrc

full_name: Lake.RegistryPkg.name
code: /--
Package metadata from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
structure RegistryPkg where
  name : String
  fullName : String
  sources : Array RegistrySrc
  data : Json
  deriving Inhabited
goal: String

full_name: Lake.RegistryPkg.data
code: /--
Package metadata from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
structure RegistryPkg where
  name : String
  fullName : String
  sources : Array RegistrySrc
  data : Json
  deriving Inhabited
goal: Lean.Json

full_name: Lake.RegistryPkg
code: /--
Package metadata from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
structure RegistryPkg where
  name : String
  fullName : String
  sources : Array RegistrySrc
  data : Json
  deriving Inhabited
goal: Type

full_name: Lake.instInhabitedRegistryPkg
code: /--
Package metadata from a Lake registry (e.g., Reservoir).
Only contains the subset of fields useful to Lake.
-/
structure RegistryPkg where
  name : String
  fullName : String
  sources : Array RegistrySrc
  data : Json
  deriving Inhabited
goal: Inhabited Lake.RegistryPkg

full_name: Lake.RegistryPkg.gitSrc?
code: def gitSrc? (pkg : RegistryPkg) : Option RegistrySrc 
goal: Option Lake.RegistrySrc

full_name: Lake.RegistryPkg.toJson
code: protected def toJson (src : RegistryPkg) : Json 
goal: Lean.Json

full_name: Lake.RegistryPkg.instToJson
code: instance : ToJson RegistryPkg 
goal: Lean.ToJson Lake.RegistryPkg

full_name: Lake.RegistryPkg.fromJson?
code: protected def fromJson? (val : Json) : Except String RegistryPkg 
goal: Except String Lake.RegistryPkg

full_name: Lake.RegistryPkg.instFromJson
code: instance : FromJson RegistryPkg 
goal: Lean.FromJson Lake.RegistryPkg

full_name: Lake.hexEncodeByte
code: def hexEncodeByte (b : UInt8) : Char 
goal: Char

full_name: Lake.uriEscapeByte
code: /-- Encode a byte as a URI escape code (e.g., `%20`). -/
def uriEscapeByte (b : UInt8) (s := "") : String 
goal: String

full_name: Lake.utf8EncodeCharM
code: @[specialize] def utf8EncodeCharM [Monad m] (c : Char) (f : σ → UInt8 → m σ) (init : σ) : m σ 
goal: m σ

full_name: Lake.uriEscapeChar
code: /-- Encode a character as a sequence of URI escape codes representing its UTF8 encoding. -/
def uriEscapeChar (c : Char) (s := "") : String 
goal: String

full_name: Lake.isUriUnreservedMark
code: /-- A URI unreserved mark as specified in [RFC2396](https://datatracker.ietf.org/doc/html/rfc2396#section-2.3). -/
def isUriUnreservedMark (c : Char)  : Bool 
goal: Bool

full_name: Lake.uriEncodeChar
code: /-- Encodes anything but a URI unreserved character as a URI escape sequences. -/
def uriEncodeChar (c : Char) (s := "") : String 
goal: String

full_name: Lake.uriEncode
code: /-- Encodes a string as an ASCII URI component, escaping special characters (and unicode). -/
def uriEncode (s : String) : String 
goal: String

full_name: Lake.getUrl
code: def getUrl (url : String) (headers : Array String := #[]) : LogIO String 
goal: Lake.LogIO String

full_name: Lake.ReservoirResp.error
code: /-- A Reservoir API response object. -/
inductive ReservoirResp (α : Type u)
| data (a : α)
| error (status : Nat) (message : String)
goal: Lake.ReservoirResp α

full_name: Lake.ReservoirResp
code: /-- A Reservoir API response object. -/
inductive ReservoirResp (α : Type u)
| data (a : α)
| error (status : Nat) (message : String)
goal: Type u

full_name: Lake.ReservoirResp.data
code: /-- A Reservoir API response object. -/
inductive ReservoirResp (α : Type u)
| data (a : α)
| error (status : Nat) (message : String)
goal: Lake.ReservoirResp α

full_name: Lake.ReservoirResp.fromJson?
code: protected def ReservoirResp.fromJson? [FromJson α] (val : Json) : Except String (ReservoirResp α) 
goal: Except String (Lake.ReservoirResp α)

full_name: Lake.instFromJsonReservoirResp
code: instance [FromJson α] : FromJson (ReservoirResp α) 
goal: Lean.FromJson (Lake.ReservoirResp α)

full_name: Lake.fetchReservoirPkg?
code: def fetchReservoirPkg? (lakeEnv : Lake.Env) (owner pkg : String) : LogIO (Option RegistryPkg) 
goal: Lake.LogIO (Option Lake.RegistryPkg)