-module(glimt@log_message). -compile(no_auto_import). -export([level_string/1, level_value/1]). -export_type([log_message/3, log_level/0]). -type log_message(HKF, HKG, HKH) :: {log_message, binary(), binary(), gleam@erlang@process:pid_(), gleam@option:option(binary()), gleam@option:option(gleam@erlang@process:pid_()), log_level(), integer(), binary(), gleam@option:option({ok, HKH} | {error, HKH}), gleam@option:option(HKF), gleam@option:option(HKG)}. -type log_level() :: all | trace | debug | info | warning | error | fatal | none. -spec level_string(log_level()) -> binary(). level_string(Log_level) -> case Log_level of all -> <<"ALL"/utf8>>; trace -> <<"TRACE"/utf8>>; debug -> <<"DEBUG"/utf8>>; info -> <<"INFO"/utf8>>; warning -> <<"WARNING"/utf8>>; error -> <<"ERROR"/utf8>>; fatal -> <<"FATAL"/utf8>>; none -> <<"NONE"/utf8>> end. -spec level_value(log_level()) -> integer(). level_value(Log_level) -> case Log_level of all -> 0; trace -> 10; debug -> 20; info -> 30; warning -> 40; error -> 50; fatal -> 60; none -> 1000 end.