# Named Struct
User = Struct.new(:name, :age)
# => User
user = User.new('John', 49)
# => #<struct User name="John", age=49>
str = RubySerial.dump user
# => "1\x00\x82\xA3obj\x82\xA2\x00\xBB\xA4User\xA2\x00\xF1\x80\xABshared_objs\x80"
clone = RubySerial.load str
# => #<struct User name=nil, age=nil>
# Unnamed Struct
user = Struct.new(:name, :age).new('John',49)
# => #<struct name="John", age=49>
str = RubySerial.dump user
# => "1\x00\x82\xA3obj\x82\xA2\x00\xBB\xC0\xA2\x00\xF1\x80\xABshared_objs\x80"
clone = RubySerial.load str
# => {"\u0000\xBB"=>nil, "\u0000\xF1"=>{}}
clone == user
# => false
user.class
# => #<Class:0x2ed4540>
clone.class
# => Hash
Currently Structs are not supported correctly: