Deprecate the VS Code Extension in the next version. Use the IDE instead.
Introduce PortDeclaration, representing a quantum port. It has this structure:
direction: enum with Input, Output and Inout options
size: Expression with the size of the port
Rename FunctionDefinition to FunctionDeclaration, adding these fields:
port_declarations: mapping from port name to PortDeclaration
param_decls: mapping from param name to ClassicalType
NativeFunctionDefinition and ForeignFunctionDefinition inherit from FunctionDeclaration
Do not initialize the param_decls and port_declarations fields for ForeignFunctionDefinition
Change the NativeFunctionDefinition inputs and outputs structure:
input_ports_wiring: mapping from input port name to wire name
output_ports_wiring: mapping from output port name to wire name
input_decls and output_decls are no longer fields of NativeFunctionDefinition
Remove the logic_flow, inputs, and outputs fields from the QMOD schema top-level object.
Instead, add a function named main with the appropriate logic_flow and port_declarations.
Rename the Grover Operator state_preparation field to state_preparation_params.