Sha256: df2f13b79368a482d09a5dbd7223dabcb722bac855c008de585bcaf5df7eca04
Contents?: true
Size: 971 Bytes
Versions: 13
Compression:
Stored size: 971 Bytes
Contents
module Timezone # This class provides a way to set a custom hook for deprecations. module Deprecate class << self # Set the custom deprecation callback. By default this # issues a deprecation warning. # # @param callback [#call] the custom callback # # @example Send a message to StatsD # Timezone::Deprecate.callback = lambda do |klass, method, _| # StatsD.increment(sanitize(klass, method)) # end # # @example Send a message to a custom logger # Timezone::Deprecate.callback = lambda do |klass, method, msg| # MyLogger.log("[#{klass} : #{method}] #{msg}") # end attr_writer :callback # @!visibility private def callback @callback || ->(_, _, message) { warn(message) } end # @!visibility private def call(klass, method, message) callback && callback.call(klass, method, message) end end end end
Version data entries
13 entries across 13 versions & 1 rubygems