Class: X11::Type::String16

Inherits:
Object
  • Object
show all
Defined in:
lib/X11/type.rb

Class Method Summary collapse

Class Method Details

.pack(x, dpy) ⇒ Object



57
58
59
# File 'lib/X11/type.rb', line 57

def self.pack(x, dpy)
  x.encode("UTF-16BE").b + "\x00\x00"*(-x.length & 1)
end

.unpack(socket, size) ⇒ Object



61
62
63
64
65
66
# File 'lib/X11/type.rb', line 61

def self.unpack(socket, size)
  val = socket.read(size)
  unused_padding = (4 - (size % 4)) % 4
  socket.read(unused_padding)
  val.force_encoding("UTF-16BE")
end