Class: RailsSettingsUi::ValueTypes::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/rails-settings-ui/value_types/base.rb

Direct Known Subclasses

Array, Boolean, Duration, Fixnum, Float, Hash, String, Symbol

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(value) ⇒ Base

Returns a new instance of Base.



6
7
8
9
10
# File 'lib/rails-settings-ui/value_types/base.rb', line 6

def initialize(value)
  self.value = value
  self.errors = []
  validate
end

Instance Attribute Details

#errorsObject

Returns the value of attribute errors.



4
5
6
# File 'lib/rails-settings-ui/value_types/base.rb', line 4

def errors
  @errors
end

#valueObject

Returns the value of attribute value.



4
5
6
# File 'lib/rails-settings-ui/value_types/base.rb', line 4

def value
  @value
end

Instance Method Details

#castObject

Raises:

  • (NotImplementedError)


12
13
14
# File 'lib/rails-settings-ui/value_types/base.rb', line 12

def cast
  raise NotImplementedError
end

#valid?Boolean

Returns:



16
17
18
# File 'lib/rails-settings-ui/value_types/base.rb', line 16

def valid?
  !errors.any?
end

#value_numeric?Boolean

Returns:



20
21
22
# File 'lib/rails-settings-ui/value_types/base.rb', line 20

def value_numeric?
  !value.to_s.match(/\A[+-]?\d+?(\.\d+)?\Z/).nil?
end