mirror of
https://github.com/jimeh/build-emacs-for-macos.git
synced 2026-02-19 06:06:40 +00:00
32 lines
553 B
Ruby
32 lines
553 B
Ruby
# frozen_string_literal: true
|
|
|
|
class Log
|
|
extend Forwardable
|
|
|
|
attr_reader :name
|
|
attr_reader :level
|
|
|
|
def initialize(name, level = :info)
|
|
@name = name
|
|
@level = level
|
|
end
|
|
|
|
def_delegators :logger, :debug, :info, :warn, :error, :fatal, :unkonwn
|
|
|
|
private
|
|
|
|
def logger
|
|
@logger ||= Logger.new($stderr).tap do |l|
|
|
l.progname = name
|
|
l.level = level
|
|
l.formatter = formatter
|
|
end
|
|
end
|
|
|
|
def formatter
|
|
proc do |severity, _datetime, progname, msg|
|
|
"==> [#{progname}] #{severity}: #{msg}\n"
|
|
end
|
|
end
|
|
end
|