Class: Xpose::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/xpose/configuration.rb

Constant Summary collapse

DEFAULT_VALUES =
{
  name: nil,
  value: nil,
  decorate: true,
  decorator: :infer,
  scope: :all
  # source: :infer (:infer, :method, : .call : ...)
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(**options) ⇒ Configuration

Returns a new instance of Configuration.



13
14
15
16
17
18
# File 'lib/xpose/configuration.rb', line 13

def initialize(**options)
  @options = options
  permit_options! unless options.fetch(:permissive, false)
  build_config
  build_internal_defaults
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method, *args, &block) ⇒ Object



20
21
22
# File 'lib/xpose/configuration.rb', line 20

def method_missing(method, *args, &block)
  config.send(method, *args, &block)
end

Instance Method Details

#modelObject



24
25
26
# File 'lib/xpose/configuration.rb', line 24

def model
  config.singularized_name.capitalize.constantize
end