Class: Unitsml::Unitsdb::Dimension
- Inherits:
-
Unitsdb::Dimension
- Object
- Unitsdb::Dimension
- Unitsml::Unitsdb::Dimension
- Defined in:
- lib/unitsml/unitsdb/dimension.rb
Instance Attribute Summary collapse
-
#parsable ⇒ Object
readonly
Returns the value of attribute parsable.
-
#parsables ⇒ Object
readonly
Returns the value of attribute parsables.
-
#processed_keys ⇒ Object
readonly
Returns the value of attribute processed_keys.
-
#vector ⇒ Object
readonly
Returns the value of attribute vector.
Instance Method Summary collapse
- #amount_of_substance=(value) ⇒ Object
- #dim_symbols ⇒ Object
- #electric_current=(value) ⇒ Object
- #id ⇒ Object
-
#initialize(attrs) ⇒ Dimension
constructor
A new instance of Dimension.
- #length=(value) ⇒ Object
- #luminous_intensity=(value) ⇒ Object
- #mass=(value) ⇒ Object
- #plane_angle=(value) ⇒ Object
- #processed_symbol ⇒ Object
- #set_vector ⇒ Object
- #thermodynamic_temperature=(value) ⇒ Object
- #time=(value) ⇒ Object
Constructor Details
#initialize(attrs) ⇒ Dimension
Returns a new instance of Dimension.
11 12 13 14 15 16 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 11 def initialize(attrs) super @parsables = {} @processed_keys = [] @parsable = false end |
Instance Attribute Details
#parsable ⇒ Object (readonly)
Returns the value of attribute parsable.
6 7 8 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 6 def parsable @parsable end |
#parsables ⇒ Object (readonly)
Returns the value of attribute parsables.
6 7 8 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 6 def parsables @parsables end |
#processed_keys ⇒ Object (readonly)
Returns the value of attribute processed_keys.
6 7 8 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 6 def processed_keys @processed_keys end |
#vector ⇒ Object (readonly)
Returns the value of attribute vector.
6 7 8 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 6 def vector @vector end |
Instance Method Details
#amount_of_substance=(value) ⇒ Object
34 35 36 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 34 def amount_of_substance=(value) quantities_common_code(:amount_of_substance, value) end |
#dim_symbols ⇒ Object
50 51 52 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 50 def dim_symbols processed_keys.map { |vec| public_send(vec)&.dim_symbols&.map(&:id) }.flatten.compact end |
#electric_current=(value) ⇒ Object
46 47 48 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 46 def electric_current=(value) quantities_common_code(:electric_current, value) end |
#id ⇒ Object
64 65 66 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 64 def id identifiers.find { |id| id.type == "nist" }&.id end |
#length=(value) ⇒ Object
18 19 20 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 18 def length=(value) quantities_common_code(:length, value) end |
#luminous_intensity=(value) ⇒ Object
38 39 40 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 38 def luminous_intensity=(value) quantities_common_code(:luminous_intensity, value) end |
#mass=(value) ⇒ Object
22 23 24 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 22 def mass=(value) quantities_common_code(:mass, value) end |
#plane_angle=(value) ⇒ Object
42 43 44 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 42 def plane_angle=(value) quantities_common_code(:plane_angle, value) end |
#processed_symbol ⇒ Object
54 55 56 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 54 def processed_symbol public_send(processed_keys.first).symbol end |
#set_vector ⇒ Object
58 59 60 61 62 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 58 def set_vector @vector ||= Utility::DIMS_VECTOR.map do |h| public_send(Utility.underscore(h))&.power end.join(":") end |
#thermodynamic_temperature=(value) ⇒ Object
30 31 32 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 30 def thermodynamic_temperature=(value) quantities_common_code(:thermodynamic_temperature, value) end |
#time=(value) ⇒ Object
26 27 28 |
# File 'lib/unitsml/unitsdb/dimension.rb', line 26 def time=(value) quantities_common_code(:time, value) end |