cirq_google.serialization.CircuitSerializer
A class for serializing and deserializing programs and operations.
Inherits From: Serializer
cirq_google.serialization.CircuitSerializer()
This class is for serializing cirq_google.api.v2. protos using one
message type per gate type. It serializes qubits by adding a field
into the constants table. Usage is by passing a cirq.Circuit
to the serialize()
method of the class, which will produce a
Program
proto. Likewise, the deserialize
method will produce
a cirq.Circuit
object from a Program
proto.
Attributes |
name
|
The name of the serializer.
|
Methods
deserialize
View source
deserialize(
proto: cirq_google.api.v2.program_pb2.Program
) -> cirq.Circuit
Deserialize a Circuit from a cirq_google.api.v2.Program.
Args |
proto
|
A dictionary representing a cirq_google.api.v2.Program proto.
|
Returns |
The deserialized Circuit
|
Raises |
ValueError
|
If the given proto has no language or the language gate set mismatches
that specified in as the name of this serialized gate set. Also if deserializing
a schedule is attempted.
|
NotImplementedError
|
If the program proto does not contain a circuit or schedule.
|
serialize
View source
serialize(
program: cirq.AbstractCircuit,
msg: Optional[cirq_google.api.v2.program_pb2.Program
] = None,
*,
arg_function_language: Optional[str] = None
) -> cirq_google.api.v2.program_pb2.Program
Serialize a Circuit to cirq_google.api.v2.Program proto.
Args |
program
|
The Circuit to serialize.
|
msg
|
An optional proto object to populate with the serialization
results.
|
arg_function_language
|
The arg_function_language field from
Program.Language .
|
Raises |
NotImplementedError
|
If the program is of a type that is supported.
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-06-27 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Missing the information I need"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Too complicated / too many steps"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Out of date"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Samples / code issue"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Other"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Easy to understand"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Solved my problem"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Other"
}]
{"lastModified": "Last updated 2024-06-27 UTC."}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-06-27 UTC."],[],[]]