Method: WWMD::ViewState#deserialize_value

Defined in:
lib/wwmd/viewstate/viewstate_deserializer_methods.rb

#deserialize_valueObject

deserialize_value



203
204
205
206
207
208
209
210
211
212
213
214
# File 'lib/wwmd/viewstate/viewstate_deserializer_methods.rb', line 203

def deserialize_value
  @last_offset = @buf.pos
  token = self.read_byte # self.read_raw_byte
  if not (tsym = VIEWSTATE_TYPES[token])
    STDERR.puts "TOKEN: [0x#{token.to_s(16)}] at #{last_offset}"
    STDERR.puts @buf.read(32).hexdump
    raise "Invalid Type [0x#{token.to_s(16)}] at #{last_offset}" if not (tsym = VIEWSTATE_TYPES[token])
  end
  nobj = self.send(tsym,token)
  raise "Invalid Class Returned #{nobj.class}" if not VIEWSTATE_TYPES.include?(nobj.opcode)
  return nobj
end