Class: ActsAsCalculator::VariableSpec
- Inherits:
-
Data
- Object
- Data
- ActsAsCalculator::VariableSpec
- Defined in:
- lib/acts_as_calculator/variable_spec.rb
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#required ⇒ Object
readonly
Returns the value of attribute required.
-
#source_config ⇒ Object
readonly
Returns the value of attribute source_config.
-
#source_type ⇒ Object
readonly
Returns the value of attribute source_type.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#name ⇒ Object (readonly)
Returns the value of attribute name
4 5 6 |
# File 'lib/acts_as_calculator/variable_spec.rb', line 4 def name @name end |
#required ⇒ Object (readonly)
Returns the value of attribute required
4 5 6 |
# File 'lib/acts_as_calculator/variable_spec.rb', line 4 def required @required end |
#source_config ⇒ Object (readonly)
Returns the value of attribute source_config
4 5 6 |
# File 'lib/acts_as_calculator/variable_spec.rb', line 4 def source_config @source_config end |
#source_type ⇒ Object (readonly)
Returns the value of attribute source_type
4 5 6 |
# File 'lib/acts_as_calculator/variable_spec.rb', line 4 def source_type @source_type end |
Class Method Details
.build(source) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/acts_as_calculator/variable_spec.rb', line 5 def self.build(source) attributes = source.is_a?(Hash) ? source : read_from(source) attributes = attributes.transform_keys(&:to_sym) required = attributes[:required] required = true if required.nil? new( name: attributes.fetch(:name).to_s, source_type: (attributes[:source_type] || :context).to_sym, source_config: (attributes[:source_config] || {}).transform_keys(&:to_sym), required: ) end |
Instance Method Details
#default ⇒ Object
29 30 31 |
# File 'lib/acts_as_calculator/variable_spec.rb', line 29 def default source_config[:default] end |