Module: RubyTDMS::DataTypes

Defined in:
lib/ruby_tdms/data_types.rb,
lib/ruby_tdms/data_types/base.rb,
lib/ruby_tdms/data_types/int8.rb,
lib/ruby_tdms/data_types/int16.rb,
lib/ruby_tdms/data_types/int32.rb,
lib/ruby_tdms/data_types/int64.rb,
lib/ruby_tdms/data_types/double.rb,
lib/ruby_tdms/data_types/single.rb,
lib/ruby_tdms/data_types/string.rb,
lib/ruby_tdms/data_types/u_int8.rb,
lib/ruby_tdms/data_types/boolean.rb,
lib/ruby_tdms/data_types/u_int16.rb,
lib/ruby_tdms/data_types/u_int32.rb,
lib/ruby_tdms/data_types/u_int64.rb,
lib/ruby_tdms/data_types/timestamp.rb,
lib/ruby_tdms/data_types/double_with_unit.rb,
lib/ruby_tdms/data_types/single_with_unit.rb

Defined Under Namespace

Classes: Base, Boolean, Double, DoubleWithUnit, Int16, Int32, Int64, Int8, Single, SingleWithUnit, String, Timestamp, UInt16, UInt32, UInt64, UInt8

Constant Summary collapse

TYPES_BY_ID =
to_hash.freeze

Class Method Summary collapse

Class Method Details

.find_by_id(id) ⇒ Object



7
8
9
# File 'lib/ruby_tdms/data_types.rb', line 7

def find_by_id(id)
	TYPES_BY_ID[id] || raise(ArgumentError, "No matching type for ID #{id.inspect}")
end

.to_hashObject



12
13
14
15
16
17
# File 'lib/ruby_tdms/data_types.rb', line 12

def to_hash
	Base.subclasses.reduce({}) do |result, klass|
		result[klass::ID] = klass
		result
	end
end