class Metro2::Records::BaseSegment

Constants

LENGTH

Public Class Methods

new() click to toggle source
# File lib/metro_2/records/base_segment.rb, line 56
def initialize
  @appendages = []
end

Public Instance Methods

k2_segment() click to toggle source
# File lib/metro_2/records/base_segment.rb, line 60
def k2_segment
  @k2_segment
end
k2_segment=(segment) click to toggle source
# File lib/metro_2/records/base_segment.rb, line 64
def k2_segment=(segment)
  @k2_segment = segment
  @appendages << @k2_segment
end
set_record_descriptor_word() click to toggle source
# File lib/metro_2/records/base_segment.rb, line 75
def set_record_descriptor_word
  self.record_descriptor_word = LENGTH + @appendages.sum { |appendage| appendage.class::LENGTH }
end
to_metro2() click to toggle source
Calls superclass method
# File lib/metro_2/records/base_segment.rb, line 69
def to_metro2
  @appendages.compact!
  set_record_descriptor_word
  super + @appendages.map(&:to_metro2).join
end