Class: PacketGen::Header::Base::Bindings Private
- Inherits:
-
Object
- Object
- PacketGen::Header::Base::Bindings
- Includes:
- Enumerable
- Defined in:
- lib/packetgen/header/base.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Class to handle header associations
Instance Attribute Summary collapse
- #bindings ⇒ Array<Binding> private
Instance Method Summary collapse
-
#<<(arg) ⇒ Bindings
private
Self.
-
#check?(fields) ⇒ Boolean
private
Check
fieldsresponds to set of bindings. -
#each ⇒ void
private
each iterator.
- #empty? ⇒ Boolean private
-
#initialize ⇒ Bindings
constructor
private
A new instance of Bindings.
- #new_set ⇒ Object private
-
#set(fields) ⇒ void
private
Set
fieldsto bindings value. -
#to_h ⇒ Hash
private
Return binding as a hash.
Constructor Details
#initialize ⇒ Bindings
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Bindings.
86 87 88 |
# File 'lib/packetgen/header/base.rb', line 86 def initialize @bindings = [] end |
Instance Attribute Details
#bindings ⇒ Array<Binding>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
84 85 86 |
# File 'lib/packetgen/header/base.rb', line 84 def bindings @bindings end |
Instance Method Details
#<<(arg) ⇒ Bindings
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns self.
96 97 98 |
# File 'lib/packetgen/header/base.rb', line 96 def <<(arg) @bindings.last << arg end |
#check?(fields) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Check fields responds to set of bindings
126 127 128 |
# File 'lib/packetgen/header/base.rb', line 126 def check?(fields) @bindings.any? { |group| group.all? { |binding| binding.check?(fields) } } end |
#each ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
each iterator
102 103 104 105 106 |
# File 'lib/packetgen/header/base.rb', line 102 def each @bindings.each do |b| yield b end end |
#empty? ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
109 110 111 |
# File 'lib/packetgen/header/base.rb', line 109 def empty? @bindings.empty? end |
#new_set ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
90 91 92 |
# File 'lib/packetgen/header/base.rb', line 90 def new_set @bindings << [] end |
#set(fields) ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
Set fields to bindings value
133 134 135 |
# File 'lib/packetgen/header/base.rb', line 133 def set(fields) @bindings.first.each { |b| b.set fields } end |
#to_h ⇒ Hash
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Return binding as a hash.
115 116 117 118 119 120 121 |
# File 'lib/packetgen/header/base.rb', line 115 def to_h hsh = {} each do |b| b.each { |sb| hsh[sb.key] = sb.value } end hsh end |