class LibBin::DataConverter::Scalar
Public Class Methods
convert(input, output, input_big = LibBin::default_big?, output_big = !input_big, _ = nil, _ = nil, length = nil)
click to toggle source
# File lib/libbin/data_types.rb, line 379 def self.convert(input, output, input_big = LibBin::default_big?, output_big = !input_big, _ = nil, _ = nil, length = nil) l = (length ? length : 1) str = input.read(@size*l) value = (input_big ? @rl_be[str, length] : @rl_le[str, length]) str = (output_big ? @sl_be[value, length] : @sl_le[value, length]) output.write(str) value end
dump(value, output, output_big = LibBin::default_big?, _ = nil, _ = nil, length = nil)
click to toggle source
# File lib/libbin/data_types.rb, line 374 def self.dump(value, output, output_big = LibBin::default_big?, _ = nil, _ = nil, length = nil) str = (output_big ? @sl_be[value, length] : @sl_le[value, length]) output.write(str) end
init(symbol)
click to toggle source
# File lib/libbin/data_types.rb, line 361 def self.init(symbol) @symbol = symbol @size = DATA_SIZES[symbol] @rl_be, @sl_be = DATA_ENDIAN[true][symbol] @rl_le, @sl_le = DATA_ENDIAN[false][symbol] end
load(input, input_big = LibBin::default_big?, _ = nil, _ = nil, length = nil)
click to toggle source
# File lib/libbin/data_types.rb, line 368 def self.load(input, input_big = LibBin::default_big?, _ = nil, _ = nil, length = nil) l = (length ? length : 1) str = input.read(@size*l) input_big ? @rl_be[str, length] : @rl_le[str, length] end
shape(value, previous_offset = 0, _ = nil, _ = nil, kind = DataShape, length = nil)
click to toggle source
# File lib/libbin/data_types.rb, line 356 def self.shape(value, previous_offset = 0, _ = nil, _ = nil, kind = DataShape, length = nil) length = 1 unless length kind::new(previous_offset, previous_offset - 1 + length * @size) end
size(*args)
click to toggle source
# File lib/libbin/data_types.rb, line 352 def self.size(*args) @size end