def deserialize(self, reader: BinaryReader):
     self.index = reader.read_int32()
     self.peer_pubkey = a2b_hex(reader.read_var_str()).hex()
     self.address = Address(reader.read_bytes(20))
     self.status = reader.read_byte()
     self.init_pos = reader.read_int64()
     self.total_pos = reader.read_int64()
 def deserialize(self, reader: BinaryReader):
     self.peer_pubkey = a2b_hex(reader.read_var_str()).hex()
     self.max_authorize = reader.read_int64()
     self.old_peerCost = reader.read_int64()
     self.new_peer_cost = reader.read_int64()
     self.set_cost_view = reader.read_int32()
     self.field1 = reader.read_var_bytes()
     self.field2 = reader.read_var_bytes()
     self.field3 = reader.read_var_bytes()
     self.field4 = reader.read_var_bytes()
 def deserialize(self, reader: BinaryReader):
     self.peer_pubkey = a2b_hex(reader.read_var_str()).hex()
     self.address = Address(reader.read_bytes(20))
     self.consensus_pos = reader.read_int64()
     self.freeze_pos = reader.read_int64()
     self.new_pos = reader.read_int64()
     self.withdraw_pos = reader.read_int64()
     self.withdraw_freeze_pos = reader.read_int64()
     self.withdraw_unfreeze_pos = reader.read_int64()
Exemple #4
0
class VmReader(object):
    def __init__(self, bys: bytearray):
        self.ms = StreamManager.GetStream(bys)
        self.reader = BinaryReader(self.ms)
        self.code = bys

    def read_byte(self):
        return self.reader.read_byte()

    def read_bool(self):
        b = self.reader.read_byte()
        return b == 1

    def read_bytes(self, count: int):
        return self.reader.read_bytes(count)

    def read_var_bytes(self):
        return self.reader.read_var_bytes()

    def read_uint16(self):
        return self.read_uint16()

    def read_uint32(self):
        return self.reader.read_int32()

    def read_uint64(self):
        return self.reader.read_int64()

    def position(self):
        return self.reader.stream.tell()

    def read_int16(self):
        try:
            res = bytearray(self.reader.read_bytes(2))
            res.reverse()
            return int(res.hex(), 16)
        except Exception as e:
            return 0

    def read_var_int(self):
        return self.reader.read_var_int()

    def seek(self, offset: int):
        return self.reader.stream.seek(offset)
 def deserialize(self, reader: BinaryReader):
     self.address = Address(reader.read_bytes(20))
     self.amount = reader.read_int64()
 def deserialize(self, reader: BinaryReader):
     self.address = Address(reader.read_bytes(20))
     self.stake = reader.read_int64()
     self.time_offset = reader.read_int32()