Exemple #1
0
 def serialize_unsigned(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint32(self.version)
     writer.write_serializable(self.prev_hash)
     writer.write_serializable(self.merkle_root)
     writer.write_uint64(self.timestamp)
     writer.write_uint32(self.index)
     writer.write_uint8(self.primary_index)
     writer.write_serializable(self.next_consensus)
Exemple #2
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        super(Header, self).serialize(writer)
        writer.write_uint8(0)
Exemple #3
0
 def serialize_unsigned(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint8(self.version)
     writer.write_uint32(self.nonce)
     writer.write_int64(self.system_fee)
     writer.write_int64(self.network_fee)
     writer.write_uint32(self.valid_until_block)
     writer.write_serializable_list(self.signers)
     writer.write_serializable_list(self.attributes)
     writer.write_var_bytes(self.script)
Exemple #4
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_uint8(self.type)
        writer.write_uint8(self.view_number)
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_uint8(self.usage)
        writer.write_var_bytes(self.data)
Exemple #6
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_uint8(self.type_.value)
        self._serialize_without_type(writer)
Exemple #7
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_var_bytes(self.filter)
        writer.write_uint8(self.K)
        writer.write_uint32(self.tweak)
Exemple #8
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        self.serialize_unsigned(writer)
        writer.write_uint8(1)
        writer.write_serializable(self.witness)
Exemple #9
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_uint8(self.type)
        writer.write_var_int(len(self.hashes))
        for h in self.hashes:  # type: types.UInt256
            writer.write_bytes(h.to_array())
Exemple #10
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_serializable(self.hash)
        writer.write_var_string(self.method)
        writer.write_uint16(self.parameters_count)
        writer.write_uint8(self.has_return_value)
        writer.write_uint8(self.call_flags.value)
Exemple #11
0
    def serialize_unsigned(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the unsigned part of the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_uint8(self.version)
        writer.write_uint32(self.nonce)
        writer.write_int64(self.system_fee)
        writer.write_int64(self.network_fee)
        writer.write_uint32(self.valid_until_block)
        writer.write_serializable_list(self.signers)
        writer.write_serializable_list(self.attributes)
        writer.write_var_bytes(self.script)
Exemple #12
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        writer.write_serializable(self.account)
        writer.write_uint8(self.scope)

        if payloads.WitnessScope.CUSTOM_CONTRACTS in self.scope:
            writer.write_serializable_list(self.allowed_contracts)

        if payloads.WitnessScope.CUSTOM_GROUPS in self.scope:
            writer.write_serializable_list(self.allowed_groups)
Exemple #13
0
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        payload = self.payload.to_array()

        if len(self.payload) > self.COMPRESSION_MIN_SIZE and MessageConfig.COMPRESSED not in self.config:
            compressed_data = lz4.block.compress(self.payload.to_array(), store_size=False)
            if len(compressed_data) < len(self.payload) - self.COMPRESSION_THRESHOLD:
                payload = compressed_data
                self.config |= MessageConfig.COMPRESSED

        writer.write_uint8(self.config)
        writer.write_uint8(self.type.value)
        writer.write_var_bytes(payload)
Exemple #14
0
 def serialize(self, writer: BinaryWriter) -> None:
     """"""
     writer.write_uint8(self._attr_for_test)
Exemple #15
0
 def serialize_special(self, writer: serialization.BinaryWriter) -> None:
     """ Internal use only - serialize the TX includes its unofficial fields """
     self.serialize(writer)
     writer.write_uint8(int(self.vm_state))
     writer.write_uint32(self.block_height)
Exemple #16
0
 def _serialize_without_type(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint64(self.id)
     writer.write_uint8(self.code)
     writer.write_var_bytes(self.result)
Exemple #17
0
 def serialize_special(self, writer: serialization.BinaryWriter) -> None:
     self.serialize(writer)
     writer.write_uint8(int(self.vm_state))
     writer.write_uint32(self.block_height)
Exemple #18
0
 def serialize(self, writer: serialization.BinaryWriter, compress=True):
     if self == self.curve.Infinity:
         writer.write_uint8(b'\x00')
     else:
         byt = self.encode_point(compressed=compress)
         writer.write_bytes(byt)
Exemple #19
0
 def serialize(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint8(self.a)
Exemple #20
0
 def serialize(self, writer: serialization.BinaryWriter) -> None:
     writer.write_serializable(self.hash)
     writer.write_var_string(self.method)
     writer.write_uint16(self.parameters_count)
     writer.write_uint8(self.has_return_value)
     writer.write_uint8(self.call_flags.value)
Exemple #21
0
 def serialize_unsigned(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint8(len(self.teststr))
     writer.write_bytes(self.teststr.encode())
Exemple #22
0
 def serialize(self, writer: serialization.BinaryWriter) -> None:
     self.serialize_unsigned(writer)
     writer.write_uint8(1)
     writer.write_serializable(self.witness)