Sha256: e7280ffefd567c8457568557e1d996582dadbdb9f3477b608426ae4ae83a3753

Contents?: true

Size: 688 Bytes

Versions: 3

Compression:

Stored size: 688 Bytes

Contents

# frozen_string_literal: true

require "zeitwerk"

Zeitwerk::Loader.new.then do |loader|
  loader.tag = File.basename __FILE__, ".rb"
  loader.push_dir __dir__
  loader.setup
end

# Main namespace.
module Marameters
  KINDS = %i[req opt rest nokey keyreq key keyrest block].freeze

  def self.loader registry = Zeitwerk::Registry
    @loader ||= registry.loaders.find { |loader| loader.tag == File.basename(__FILE__, ".rb") }
  end

  def self.categorize parameters, arguments
    @categorize ||= Categorizer.new
    @categorize.call parameters, arguments
  end

  def self.of(...) = Probe.of(...)

  def self.for(...) = Probe.new(...)

  def self.signature(...) = Signature.new(...)
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
marameters-4.2.0 lib/marameters.rb
marameters-4.1.0 lib/marameters.rb
marameters-4.0.1 lib/marameters.rb