Skip to content

Commit

Permalink
🏷️ Type interface for all obstruction layouts
Browse files Browse the repository at this point in the history
  • Loading branch information
marcelwa committed Dec 3, 2024
1 parent 559237d commit 6113fd5
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@

#include <pybind11/pybind11.h>

#include <string>

namespace pyfiction
{

Expand Down
72 changes: 72 additions & 0 deletions bindings/mnt/pyfiction/pyfiction.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -1034,6 +1034,78 @@ class hexagonal_gate_layout(clocked_hexagonal_layout):
def __repr__(self) -> str: ...


class cartesian_obstruction_layout(cartesian_gate_layout):
@overload
def __init__(self) -> None: ...

@overload
def __init__(self, layout: cartesian_gate_layout) -> None: ...

def obstruct_coordinate(self, c: offset_coordinate) -> None: ...

def obstruct_connection(self, src: offset_coordinate, tgt: offset_coordinate) -> None: ...

def is_obstructed_coordinate(self, c: offset_coordinate) -> bool: ...

def is_obstructed_connection(self, src: offset_coordinate, tgt: offset_coordinate) -> bool: ...

def clear_obstructed_coordinate(self, c: offset_coordinate) -> None: ...

def clear_obstructed_connection(self, src: offset_coordinate, tgt: offset_coordinate) -> None: ...

def clear_obstructed_coordinates(self) -> None: ...

def clear_obstructed_connections(self) -> None: ...


class shifted_cartesian_obstruction_layout(shifted_cartesian_gate_layout):
@overload
def __init__(self) -> None: ...

@overload
def __init__(self, layout: shifted_cartesian_gate_layout) -> None: ...

def obstruct_coordinate(self, c: offset_coordinate) -> None: ...

def obstruct_connection(self, src: offset_coordinate, tgt: offset_coordinate) -> None: ...

def is_obstructed_coordinate(self, c: offset_coordinate) -> bool: ...

def is_obstructed_connection(self, src: offset_coordinate, tgt: offset_coordinate) -> bool: ...

def clear_obstructed_coordinate(self, c: offset_coordinate) -> None: ...

def clear_obstructed_connection(self, src: offset_coordinate, tgt: offset_coordinate) -> None: ...

def clear_obstructed_coordinates(self) -> None: ...

def clear_obstructed_connections(self) -> None: ...


class hexagonal_obstruction_layout(hexagonal_gate_layout):
@overload
def __init__(self) -> None: ...

@overload
def __init__(self, layout: hexagonal_gate_layout) -> None: ...

def obstruct_coordinate(self, c: cube_coordinate) -> None: ...

def obstruct_connection(self, src: cube_coordinate, tgt: cube_coordinate) -> None: ...

def is_obstructed_coordinate(self, c: cube_coordinate) -> bool: ...

def is_obstructed_connection(self, src: cube_coordinate, tgt: cube_coordinate) -> bool: ...

def clear_obstructed_coordinate(self, c: cube_coordinate) -> None: ...

def clear_obstructed_connection(self, src: cube_coordinate, tgt: cube_coordinate) -> None: ...

def clear_obstructed_coordinates(self) -> None: ...

def clear_obstructed_connections(self) -> None: ...


class qca_technology:
class cell_type(Enum):
EMPTY = ...
Expand Down

0 comments on commit 6113fd5

Please sign in to comment.