class Marker
class Marker
Constants
- OPT
- RPT
Public Class Methods
gen(segment)
click to toggle source
# File lib/ez7gen/structure_parser.rb, line 291 def self.gen(segment) marker = nil mtch = segment.match(@@match_regex) return nil if(!mtch)# done if nothing to match # seg = (mtch[Marker:OPT])?mtch[Marker:OPT]:mtch[Marker:RPT] if(mtch[Marker::OPT]) marker = OptionalGroup.new(mtch[Marker::OPT]) # # check for optional repeating if(repeatingSubMarker = Marker.gen(mtch[Marker::OPT])) marker= marker.clear.push(repeatingSubMarker) end elsif(mtch[Marker::RPT]) marker = RepeatingGroup.new(mtch[Marker::RPT]) end return marker end
gen1(segment)
click to toggle source
decided that segment has subgroups
# File lib/ez7gen/structure_parser.rb, line 260 def self.gen1(segment) marker = nil # 1 no match - just to cover bases marker = whatGroup?(segment) return nil if(!marker)# done if nothing to match # if(mtch[Marker::OPT])# 2 optional # marker = OptionalGroup.new(mtch[Marker::OPT]) # # # check for optional repeating # elsif(mtch[Marker::RPT])# 3 repeating # marker = RepeatingGroup.new(mtch[Marker::RPT]) # end # 3 repeating # 4 if optional check for optional-repeating # if(mtch[Marker::OPT]) # marker = OptionalGroup.new(mtch[Marker::OPT]) # # # check for optional repeating # if(repeatingSubMarker = Marker.gen(mtch[Marker::OPT])) # marker= marker.clear.push(repeatingSubMarker) # end # elsif(mtch[Marker::RPT]) # marker = RepeatingGroup.new(mtch[Marker::RPT]) # end return marker end
mark(group, prnths)
click to toggle source
def self.match_for_complex_group(segment)
mtch = segment.match(@@match_regex)
end
# File lib/ez7gen/structure_parser.rb, line 314 def self.mark(group, prnths) group = prnths.clone().insert(1,group) end
whatGroup?(segment)
click to toggle source
# File lib/ez7gen/structure_parser.rb, line 318 def self.whatGroup?(segment) group = nil mtch = segment.match(@@match_regex) return group if(!mtch)# done if nothing to match if(mtch[Marker::OPT]) OptionalGroup.new() elsif(mtch[Marker::RPT]) RepeatingGroup.new() end end