예제 #1
0
 def serialize(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint32(self.magic)
     writer.write_bytes(self.compiler.encode('utf-8'))
     writer.write_bytes(self.version.to_array())
     writer.write_bytes(self.script_hash.to_array())
     writer.write_bytes(self.checksum)
     writer.write_var_bytes(self.script)
예제 #2
0
파일: filter.py 프로젝트: EdgeDLT/neo3-boa
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

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

        Args:
            writer: instance.
        """
        writer.write_var_bytes(self.invocation_script)
        writer.write_var_bytes(self.verification_script)
예제 #4
0
 def serialize_unsigned(self, writer: serialization.BinaryWriter) -> None:
     writer.write_uint8(self.version)
     writer.write_uint32(self.nonce)
     writer.write_serializable(self.sender)
     writer.write_int64(self.system_fee)
     writer.write_int64(self.network_fee)
     writer.write_uint32(self.valid_until_block)
     writer.write_serializable_list(self.attributes)
     writer.write_serializable_list(self.cosigners)
     writer.write_var_bytes(self.script)
예제 #5
0
파일: nef.py 프로젝트: CityOfZion/neo3-boa
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        writer.write_uint32(self.magic)
        writer.write_bytes(self.compiler_with_version)

        writer.write_uint16(0)  # 2 reserved bytes
        writer.write_var_bytes(bytes())  # TODO: method tokens
        writer.write_uint16(0)  # 2 reserved bytes

        writer.write_var_bytes(self.script)
        writer.write_bytes(self.checksum)
예제 #6
0
파일: filter.py 프로젝트: EdgeDLT/neo3-boa
    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)
예제 #7
0
파일: block.py 프로젝트: EdgeDLT/neo3-boa
    def serialize(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream.

        Args:
            writer: instance.
        """
        super(MerkleBlockPayload, self).serialize(writer)
        writer.write_var_int(self.content_count)
        writer.write_serializable_list(self.hashes)
        writer.write_var_bytes(self.flags)
예제 #8
0
    def serialize_unsigned(self, writer: serialization.BinaryWriter) -> None:
        """
        Serialize the object into a binary stream excluding the validation byte + witness.

        Args:
            writer: instance.
        """
        writer.write_uint32(self.version)
        writer.write_serializable(self.prev_hash)
        writer.write_uint32(self.block_index)
        writer.write_uint16(self.validator_index)
        writer.write_var_bytes(self.data)
예제 #9
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)
예제 #10
0
 def serialize(self, writer: serialization.BinaryWriter) -> None:
     writer.write_var_bytes(self.value)
예제 #11
0
 def serialize(self, writer: BinaryWriter) -> None:
     writer.write_var_bytes(self.script)
     writer.write_serializable(self.manifest)