StaticIndex

class StaticIndex

A static thread-safe index that allows multiple entries using the same name

Members defined in StaticIndex (11 members)

empty

R

Returns True if this index contains no indexed symbols.

__bool__

Returns True if this index is not empty.

__init__

__len__

The number of different symbols name in this index.

clear

Clear this index.

clone

Clone this index. Modifications to one or the other index does not affect the other.

erase

Remove all symbols exported by document from this index. Returns the number of symbols erased.

insert

Add all symbols exported by document from this index. Returns the number of symbols added.

reserve

Reserve memory for this index. This can reduce the number of allocations performed when adding new symbols to this index.

visit

Visit all symbols with the provided name.

visit_while

Visit all symbols with the provided name until visitor returns False.

Attributes

property empty: bool

Returns True if this index contains no indexed symbols.

Methods

__bool__() bool

Returns True if this index is not empty.

__init__() None
__len__() int

The number of different symbols name in this index.

clear() None

Clear this index.

clone() syside.StaticIndex

Clone this index. Modifications to one or the other index does not affect the other.

erase(document: syside.Document) int

Remove all symbols exported by document from this index. Returns the number of symbols erased.

NOTE: exported symbols must first be collected into the document, and only symbols currently exported by document will be erased.

insert(document: syside.Document) int

Add all symbols exported by document from this index. Returns the number of symbols added.

NOTE: exported symbols must first be collected into the document.

reserve(arg: int, /) None

Reserve memory for this index. This can reduce the number of allocations performed when adding new symbols to this index.

visit(arg0: str, arg1: Callable[[syside.IndexedSymbol], None], /) None

Visit all symbols with the provided name.

symbol: IndexedSymbol | None = None

def visitor(value: IndexedSymbol) -> None:
    nonlocal symbol
    symbol = value
    ...

index.visit("mySymbol", visitor)
visit(arg0: Sequence[str], arg1: Callable[[str, syside.IndexedSymbol], None], /) None

Bulk visit all symbols with the provided names.

symbol: IndexedSymbol | None = None

def visitor(value: IndexedSymbol) -> None:
    nonlocal symbol
    symbol = value
    ...

index.visit(("mySymbol0", "mySymbol1"), visitor)
visit_while(arg0: str, arg1: Callable[[syside.IndexedSymbol], bool], /) None

Visit all symbols with the provided name until visitor returns False.

symbol: IndexedSymbol | None = None

def visitor(value: IndexedSymbol) -> bool:
    nonlocal symbol
    symbol = value
    ...

    return False

index.visit_while("mySymbol", visitor)
visit_while(arg0: Sequence[str], arg1: Callable[[str, syside.IndexedSymbol], bool], /) None

Bulk visit all symbols with the provided names until visitor returns False.

symbol: IndexedSymbol | None = None

def visitor(value: IndexedSymbol) -> bool:
    nonlocal symbol
    symbol = value
    ...

    return False

index.visit_while(("mySymbol0", "mySymbol1"), visitor)
Used in