lib/lightning/onion/per_hop.rb in lightning-onion-0.2.2 vs lib/lightning/onion/per_hop.rb in lightning-onion-0.2.3
- old
+ new
@@ -10,15 +10,31 @@
@outgoing_cltv_value = outgoing_cltv_value
@padding = padding
end
def self.parse(payload)
- new(*payload.unpack('Q>2Na16'))
+ new(*payload.unpack('Q>2Na12'))
end
+ LAST_NODE = PerHop.parse("\x00" * 32)
def to_payload
- [short_channel_id, amt_to_forward, outgoing_cltv_value, padding].pack('Q>2Na12')
+ to_a.pack('Q>2Na12')
end
- LAST_NODE = PerHop.parse("\x00" * 32)
+
+ def ==(other)
+ other.class == self.class && other.to_a == to_a
+ end
+
+ alias eql? ==
+
+ def hash
+ to_a.hash
+ end
+
+ protected
+
+ def to_a
+ [short_channel_id, amt_to_forward, outgoing_cltv_value, padding]
+ end
end
end
end