Class: XBeeRuby::Address16
- Defined in:
- lib/xbee-ruby/address_16.rb
Constant Summary collapse
- BROADCAST =
Address16.new 0xff, 0xfe
Class Method Summary collapse
Instance Method Summary collapse
- #==(other) ⇒ Object
-
#initialize(msb, lsb) ⇒ Address16
constructor
A new instance of Address16.
- #to_a ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(msb, lsb) ⇒ Address16
Returns a new instance of Address16.
17 18 19 |
# File 'lib/xbee-ruby/address_16.rb', line 17 def initialize msb, lsb @address = [msb, lsb] end |
Class Method Details
.from_a(array) ⇒ Object
29 30 31 32 33 34 35 |
# File 'lib/xbee-ruby/address_16.rb', line 29 def self.from_a array if array.length == 2 && array.all? {|x| (0..255).cover? x } self.new *array else raise ArgumentError, "#{array} is not a valid 16-bit address array" end end |
.from_s(string) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/xbee-ruby/address_16.rb', line 21 def self.from_s string if matcher = /^(\h\h)[^\h]*(\h\h)$/.match(string) self.new *(matcher[1..2].map &:hex) else raise ArgumentError, "#{string} is not a valid 16-bit address string" end end |
Instance Method Details
#==(other) ⇒ Object
45 46 47 |
# File 'lib/xbee-ruby/address_16.rb', line 45 def == other to_a == other.to_a end |
#to_a ⇒ Object
41 42 43 |
# File 'lib/xbee-ruby/address_16.rb', line 41 def to_a @address end |
#to_s ⇒ Object
37 38 39 |
# File 'lib/xbee-ruby/address_16.rb', line 37 def to_s '%02x%02x' % @address end |