Class: String
- Inherits:
-
Object
- Object
- String
- Defined in:
- lib/model_concerns/string.rb
Instance Method Summary collapse
Instance Method Details
#^(other) ⇒ Object
4 5 6 7 8 9 10 11 |
# File 'lib/model_concerns/string.rb', line 4 def ^ (other) self_binary_array = self.unpack("U*") key_binary_array = other.unpack("U*") longest = [self_binary_array.length, key_binary_array.length].max self_binary_array = [0] * (longest - self_binary_array.length) + self_binary_array key_binary_array = [0] * (longest - key_binary_array.length) + key_binary_array return self_binary_array.zip(key_binary_array).map { |a, b| a ^ b }.trim_head.pack("U*") end |