class Baku::ComponentMask
Attributes
value[R]
Public Class Methods
from_components(components)
click to toggle source
# File lib/baku/component_mask.rb, line 14 def from_components(components) record_components(components) mask_value = 0 @@component_set.each_with_index do |component, index| mask_value |= (1 << index) if components.include?(component) end ComponentMask.new(mask_value) end
new(value)
click to toggle source
# File lib/baku/component_mask.rb, line 27 def initialize(value) @value = value end
record_components(components)
click to toggle source
# File lib/baku/component_mask.rb, line 8 def record_components(components) components.each do |component| @@component_set << component end end
Public Instance Methods
==(other)
click to toggle source
# File lib/baku/component_mask.rb, line 39 def ==(other) @value == other.value end
add_component(component_class)
click to toggle source
# File lib/baku/component_mask.rb, line 31 def add_component(component_class) end
eql?(other)
click to toggle source
# File lib/baku/component_mask.rb, line 43 def eql?(other) self == other end
hash()
click to toggle source
# File lib/baku/component_mask.rb, line 47 def hash value end
matches?(other_mask)
click to toggle source
# File lib/baku/component_mask.rb, line 35 def matches?(other_mask) @value & other_mask.value == @value end