Sha256: e83f03950e99e8abd23e018346ff971c58e2da98845fbf834da61754f42417b6

Contents?: true

Size: 995 Bytes

Versions: 2

Compression:

Stored size: 995 Bytes

Contents

# frozen_string_literal: true

require "zeitwerk"

require "dry/core"
require "dry/configurable"
require "dry/monitor/version"

module Dry
  module Monitor
    extend Dry::Core::Extensions
    include Dry::Core::Constants

    register_extension(:rack) do
      require "rack/utils"
      require "dry/monitor/rack/logger"
    end

    register_extension(:sql) do
      require "dry/monitor/sql/logger"
    end

    # @api private
    def self.loader
      @loader ||= Zeitwerk::Loader.new.tap do |loader|
        root = File.expand_path("..", __dir__)
        loader.tag = "dry-monitor"
        loader.inflector = Zeitwerk::GemInflector.new("#{root}/dry-monitor.rb")
        loader.push_dir(root)
        loader.ignore(
          "#{root}/dry-monitor.rb",
          "#{root}/dry/monitor/version.rb",
          "#{root}/dry/monitor/rack/**/*.rb",
          "#{root}/dry/monitor/sql/**/*.rb"
        )
        loader.inflector.inflect "sql" => "SQL"
      end
    end

    loader.setup
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
dry-monitor-1.0.1 lib/dry/monitor.rb
dry-monitor-1.0.0 lib/dry/monitor.rb