- quiet: Lake.Verbosity
- normal: Lake.Verbosity
- verbose: Lake.Verbosity
Instances For
Equations
- Lake.instReprVerbosity = { reprPrec := Lake.reprVerbosity✝ }
Equations
- Lake.instDecidableEqVerbosity x y = if h : x.toCtorIdx = y.toCtorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Lake.instOrdVerbosity = { compare := Lake.ordVerbosity✝ }
Equations
- Lake.instInhabitedVerbosity = { default := Lake.Verbosity.normal }
- trace: Lake.LogLevel
- info: Lake.LogLevel
- warning: Lake.LogLevel
- error: Lake.LogLevel
Instances For
Equations
- Lake.instInhabitedLogLevel = { default := Lake.LogLevel.trace }
Equations
- Lake.instReprLogLevel = { reprPrec := Lake.reprLogLevel✝ }
Equations
- Lake.instDecidableEqLogLevel x y = if h : x.toCtorIdx = y.toCtorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Lake.instOrdLogLevel = { compare := Lake.ordLogLevel✝ }
Equations
- Lake.instToJsonLogLevel = { toJson := Lake.toJsonLogLevel✝ }
Equations
- Lake.instFromJsonLogLevel = { fromJson? := Lake.fromJsonLogLevel✝ }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lake.instToStringLogLevel = { toString := Lake.LogLevel.toString }
Equations
- self.visibleAtVerbosity verbosity = match self with | Lake.LogLevel.trace => verbosity == Lake.Verbosity.verbose | Lake.LogLevel.info => verbosity != Lake.Verbosity.quiet | x => true
Instances For
Equations
- Lake.instInhabitedLogEntry = { default := { level := default, message := default } }
Equations
- Lake.instToJsonLogEntry = { toJson := Lake.toJsonLogEntry✝ }
Equations
- Lake.instFromJsonLogEntry = { fromJson? := Lake.fromJsonLogEntry✝ }
Equations
- Lake.instToStringLogEntry = { toString := Lake.LogEntry.toString }
@[inline]
def
Lake.logVerbose
{m : Type u_1 → Type u_2}
[Monad m]
[Lake.MonadLog m]
(message : String)
:
m PUnit
Equations
- Lake.logVerbose message = Lake.logEntry { level := Lake.LogLevel.trace, message := message }
Instances For
@[inline]
Equations
- Lake.logInfo message = Lake.logEntry { level := Lake.LogLevel.info, message := message }
Instances For
@[inline]
Equations
- Lake.logWarning message = Lake.logEntry { level := Lake.LogLevel.warning, message := message }
Instances For
@[inline]
Equations
- Lake.logError message = Lake.logEntry { level := Lake.LogLevel.error, message := message }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[specialize #[]]
def
Lake.logSerialMessage
{m : Type u_1 → Type u_2}
(msg : Lean.SerialMessage)
[Lake.MonadLog m]
:
m PUnit
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[specialize #[]]
Equations
- Lake.MonadLog.nop = { logEntry := fun (x : Lake.LogEntry) => pure () }
Instances For
Equations
- Lake.MonadLog.instInhabitedOfPure = { default := Lake.MonadLog.nop }
@[specialize #[]]
def
Lake.MonadLog.io
{m : Type → Type u_1}
[MonadLiftT BaseIO m]
(verbosity : optParam Lake.Verbosity Lake.Verbosity.normal)
:
Equations
- Lake.MonadLog.io verbosity = { logEntry := fun (e : Lake.LogEntry) => liftM (Lake.logToIO e verbosity) }
Instances For
@[inline]
def
Lake.MonadLog.stream
{m : Type → Type u_1}
[MonadLiftT BaseIO m]
(h : IO.FS.Stream)
(verbosity : optParam Lake.Verbosity Lake.Verbosity.normal)
:
Equations
- Lake.MonadLog.stream h verbosity = { logEntry := fun (e : Lake.LogEntry) => liftM (Lake.logToStream e h verbosity) }
Instances For
@[inline]
def
Lake.MonadLog.stdout
{m : Type → Type u_1}
[MonadLiftT BaseIO m]
(verbosity : optParam Lake.Verbosity Lake.Verbosity.normal)
:
Equations
- Lake.MonadLog.stdout verbosity = { logEntry := fun (e : Lake.LogEntry) => liftM do let __do_lift ← IO.getStdout Lake.logToStream e __do_lift verbosity }
Instances For
@[inline]
def
Lake.MonadLog.stderr
{m : Type → Type u_1}
[MonadLiftT BaseIO m]
(verbosity : optParam Lake.Verbosity Lake.Verbosity.normal)
:
Equations
- Lake.MonadLog.stderr verbosity = { logEntry := fun (e : Lake.LogEntry) => liftM do let __do_lift ← IO.getStderr Lake.logToStream e __do_lift verbosity }
Instances For
@[inline]
def
Lake.MonadLog.lift
{m : Type u_1 → Type u_2}
{n : Type u_1 → Type u_3}
[MonadLiftT m n]
(self : Lake.MonadLog m)
:
Equations
- self.lift = { logEntry := fun (e : Lake.LogEntry) => liftM (Lake.logEntry e) }
Instances For
instance
Lake.MonadLog.instOfMonadLift
{m : Type u_1 → Type u_2}
{n : Type u_1 → Type u_3}
[MonadLift m n]
[methods : Lake.MonadLog m]
:
Equations
- Lake.MonadLog.instOfMonadLift = methods.lift
instance
Lake.instInhabitedMonadLogTOfPure
{n : Type u_1 → Type u_2}
{α : Type u_1}
{m : Type u_3 → Type u_1}
[Pure n]
[Inhabited α]
:
Inhabited (Lake.MonadLogT m n α)
Equations
- Lake.instInhabitedMonadLogTOfPure = { default := fun (x : Lake.MonadLog m) => pure default }
instance
Lake.instMonadLogMonadLogTOfMonadOfMonadLiftT
{n : Type u_1 → Type u_2}
{m : Type u_1 → Type u_1}
[Monad n]
[MonadLiftT m n]
:
Lake.MonadLog (Lake.MonadLogT m n)
Equations
- Lake.instMonadLogMonadLogTOfMonadOfMonadLiftT = { logEntry := fun (e : Lake.LogEntry) => do let __do_lift ← read liftM (Lake.logEntry e) }
@[inline]
def
Lake.MonadLogT.adaptMethods
{n : Type u_1 → Type u_2}
{m : Type u_3 → Type u_1}
{m' : Type u_4 → Type u_1}
{α : Type u_1}
[Monad n]
(f : Lake.MonadLog m → Lake.MonadLog m')
(self : Lake.MonadLogT m' n α)
:
Lake.MonadLogT m n α
Equations
- Lake.MonadLogT.adaptMethods f self = ReaderT.adapt f self
Instances For
@[inline]
def
Lake.MonadLogT.ignoreLog
{m : Type → Type u_1}
{n : Type u_1 → Type u_2}
{α : Type u_1}
[Pure m]
(self : Lake.MonadLogT m n α)
:
n α
Equations
- self.ignoreLog = self Lake.MonadLog.nop
Instances For
Equations
- Lake.Log.instEmptyCollection = { emptyCollection := Lake.Log.empty }
Equations
- Lake.Log.instAppend = { append := Lake.Log.append }
Equations
- log.toString = Array.foldl (fun (x : String) (x_1 : Lake.LogEntry) => x ++ x_1.toString ++ "\n") "" log.entries 0
Instances For
Equations
- Lake.Log.instToString = { toString := Lake.Log.toString }
@[inline]
def
Lake.Log.replay
{m : Type u_1 → Type u_2}
[Monad m]
[logger : Lake.MonadLog m]
(log : Lake.Log)
:
m PUnit
Equations
- log.replay = Array.forM (fun (e : Lake.LogEntry) => Lake.logEntry e) log.entries 0
Instances For
def
Lake.Log.filterByVerbosity
(log : Lake.Log)
(verbosity : optParam Lake.Verbosity Lake.Verbosity.normal)
:
Equations
- log.filterByVerbosity verbosity = Lake.Log.filter (fun (x : Lake.LogEntry) => x.level.visibleAtVerbosity verbosity) log
Instances For
def
Lake.Log.hasVisibleEntries
(log : Lake.Log)
(verbosity : optParam Lake.Verbosity Lake.Verbosity.normal)
:
Equations
- log.hasVisibleEntries verbosity = Lake.Log.any (fun (x : Lake.LogEntry) => x.level.visibleAtVerbosity verbosity) log
Instances For
@[inline]
Instances For
instance
Lake.instMonadGetLogOfMonadLift
{m : Type → Type u_1}
{n : Type → Type u_2}
[MonadLift m n]
[Lake.MonadGetLog m]
:
Equations
- Lake.LogT.instMonadGetLogOfMonad = { getLog := get }
Equations
- Lake.LogT.instMonadLogOfMonad = { logEntry := Lake.LogT.log }
@[reducible, inline]
Equations
Instances For
Equations
- Lake.ELogT.instMonadGetLogOfPure = { getLog := get }
Equations
- Lake.ELogT.instMonadLogOfMonad = { logEntry := Lake.ELogT.log }
@[inline]
def
Lake.ELogT.errorWithLog
{m : Type → Type}
{α : Type}
{β : Type}
[Monad m]
(x : Lake.ELogT m α)
:
Lake.ELogT m β
Performs x
and groups all logs generated into an error block.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
def
Lake.ELogT.replayLog
{n : Type → Type u_1}
{m : Type → Type}
{α : Type}
[Alternative n]
[Monad n]
[logger : Lake.MonadLog n]
[MonadLiftT m n]
(self : Lake.ELogT m α)
:
n α
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
def
Lake.ELogT.catchFailure
{m : Type → Type}
{α : Type}
[Monad m]
(f : Lake.Log → Lake.LogT m α)
(self : Lake.ELogT m α)
:
Lake.LogT m α
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline]
Equations
- self.captureLog = do let __do_lift ← self ∅ match __do_lift with | Lake.EResult.ok a log => pure (some a, log) | Lake.EResult.error a log => pure (none, log)
Instances For
@[reducible, inline]
Equations
Instances For
Equations
- Lake.instMonadLiftIOLogIO = { monadLift := fun {α : Type} => Lake.MonadError.runIO }