-module(gclog). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([new_stdout/2, new_stderr/2, entry/2, log/3, default/2, debug/2, info/2, notice/2, warning/2, error/2, critical/2, alert/2, emergency/2]). -export_type([logger/2]). -type logger(GAG, GAH) :: {logger, gclog@severity:severity(), fun((binary()) -> GAH), fun((GAG) -> gleam@json:json())}. -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 32). -spec new_stdout(gclog@severity:severity(), fun((GAK) -> gleam@json:json())) -> logger(GAK, nil). new_stdout(Severity, Serializer) -> {logger, Severity, fun gleam_stdlib:println/1, Serializer}. -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 40). -spec new_stderr(gclog@severity:severity(), fun((GAO) -> gleam@json:json())) -> logger(GAO, nil). new_stderr(Severity, Serializer) -> {logger, Severity, fun gleam_stdlib:println_error/1, Serializer}. -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 48). -spec entry(logger(any(), any()), gclog@entry:entry()) -> nil. entry(Logger, Entry) -> case gclog@severity:to_int(erlang:element(2, Entry)) >= gclog@severity:to_int( erlang:element(2, Logger) ) of true -> _pipe = gclog@entry:to_json(Entry), _pipe@1 = gleam@json:to_string(_pipe), (erlang:element(3, Logger))(_pipe@1), nil; false -> nil end. -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 61). -spec log(logger(GAW, any()), GAW, gclog@severity:severity()) -> nil. log(Logger, Message, Severity) -> _pipe = (erlang:element(4, Logger))(Message), _pipe@1 = gclog@entry:new(Severity, _pipe), entry(Logger, _pipe@1). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 68). -spec default(logger(GBA, any()), GBA) -> nil. default(Logger, Message) -> log(Logger, Message, default). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 73). -spec debug(logger(GBE, any()), GBE) -> nil. debug(Logger, Message) -> log(Logger, Message, debug). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 78). -spec info(logger(GBI, any()), GBI) -> nil. info(Logger, Message) -> log(Logger, Message, info). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 83). -spec notice(logger(GBM, any()), GBM) -> nil. notice(Logger, Message) -> log(Logger, Message, notice). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 88). -spec warning(logger(GBQ, any()), GBQ) -> nil. warning(Logger, Message) -> log(Logger, Message, warning). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 93). -spec error(logger(GBU, any()), GBU) -> nil. error(Logger, Message) -> log(Logger, Message, error). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 98). -spec critical(logger(GBY, any()), GBY) -> nil. critical(Logger, Message) -> log(Logger, Message, critical). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 103). -spec alert(logger(GCC, any()), GCC) -> nil. alert(Logger, Message) -> log(Logger, Message, alert). -file("/home/sam/dev/personal/gclog/src/gclog.gleam", 108). -spec emergency(logger(GCG, any()), GCG) -> nil. emergency(Logger, Message) -> log(Logger, Message, emergency).