qml.pytrees.PyTreeStructure

class PyTreeStructure(type_=None, metadata=(), children=())[source]

Bases: object

A pytree data structure, holding the type, metadata, and child pytree structures.

>>> op = qml.adjoint(qml.RX(0.1, 0))
>>> data, structure = qml.pytrees.flatten(op)
>>> structure
PyTreeStructure(AdjointOperation, (), (PyTreeStructure(RX, (Wires([0]), ()), (PyTreeStructure(),)),))

A leaf is defined as just a PyTreeStructure with type_=None.

children

The children of the pytree node.

is_leaf

Whether or not the structure is a leaf.

metadata

Any metadata needed to reproduce the original object.

type_

The type corresponding to the node.

children = ()

The children of the pytree node. Can be either other structures or terminal leaves.

is_leaf

Whether or not the structure is a leaf.

metadata = ()

Any metadata needed to reproduce the original object.

type_ = None

The type corresponding to the node. If None, then the structure is a leaf.