class ABNF::Parser::Rules::Concatenation
Attributes
abnf[R]
rules[R]
Public Class Methods
new(rules, abnf)
click to toggle source
# File lib/abnf/parser/rules/concatenation.rb, line 8 def initialize rules, abnf @abnf = abnf @rules = rules end
Public Instance Methods
==(other_rule)
click to toggle source
# File lib/abnf/parser/rules/concatenation.rb, line 13 def == other_rule return false unless other_rule.is_a? self.class self.rules == other_rule.rules end
call(io, rule_list=nil)
click to toggle source
# File lib/abnf/parser/rules/concatenation.rb, line 18 def call io, rule_list=nil node = Node.concatenation abnf match = rules.all? do |rule| child = rule.(io, rule_list) or break node << child end if match node else io.seek -node.octets, IO::SEEK_CUR nil end end