Class: Rubadoop::BaseDsl

Inherits:
Object
  • Object
show all
Defined in:
lib/rubadoop/base_dsl.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ BaseDsl

Returns a new instance of BaseDsl.



7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/rubadoop/base_dsl.rb', line 7

def initialize(params)

  unless params.singleton_methods.member? :[]
    params = params ? params.dup.with_indifferent_access : {}.with_indifferent_access

    def params.[](param)
      value = super(param)
      raise "Missing param: #{param}" if value.nil?
      value
    end
  end

  @params = params
end

Instance Attribute Details

#paramsObject (readonly)

Returns the value of attribute params.



5
6
7
# File 'lib/rubadoop/base_dsl.rb', line 5

def params
  @params
end

Instance Method Details

#has_param?(param) ⇒ Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/rubadoop/base_dsl.rb', line 22

def has_param?(param)
  params.has_key? param
end

#optional_param(param, default_value) ⇒ Object



26
27
28
# File 'lib/rubadoop/base_dsl.rb', line 26

def optional_param(param, default_value)
  params[param] = default_value unless has_param? param
end