QXel.provider.braket.openqasm._helpers.arrays module

Helpers for manipulating OpenQASM array literals and indices.

QXel.provider.braket.openqasm._helpers.arrays.convert_range_def_to_slice(range_def)

Convert AST node into Python slice object

QXel.provider.braket.openqasm._helpers.arrays.convert_range_def_to_range(range_def)

Convert AST node into Python range object

QXel.provider.braket.openqasm._helpers.arrays.convert_discrete_set_to_list(discrete_set)

Convert AST node into Python list object

QXel.provider.braket.openqasm._helpers.arrays.get_type_width(var_type)

Return the declared scalar width for a classical type, when present.

QXel.provider.braket.openqasm._helpers.arrays.get_elements(value, index, type_width=None)
QXel.provider.braket.openqasm._helpers.arrays.get_elements(value, index, type_width)

Get elements of an Array, given an index.

QXel.provider.braket.openqasm._helpers.arrays.create_empty_array(dims)

Create an empty Array of given dimensions

QXel.provider.braket.openqasm._helpers.arrays.convert_index(index)

Convert unspecified index type to Python object

QXel.provider.braket.openqasm._helpers.arrays.flatten_indices(indices)

Convert a[i][j][k] to the equivalent a[i, j, k]

QXel.provider.braket.openqasm._helpers.arrays.unwrap_var_type(var_type)

Return the type that comprises the given type. For example, the type Array(dims=[2, 3, 4]) has elements of type Array(dims=[3, 4]). Sized bit types are Arrays whose elements have type BoolType.

QXel.provider.braket.openqasm._helpers.arrays.update_value(current_value, value, update_indices, var_type)
QXel.provider.braket.openqasm._helpers.arrays.update_value(current_value, value, update_indices, var_type)

Update an Array, for example: a[4, 1:] = {1, 2, 3}