socks_router.proxies

Attributes

logger

Parser

ModifiedEvent

Classes

Proxy

Base class for protocol classes.

BaseProxy

Base class for protocol classes.

FileProxy

Base class for protocol classes.

LiteralProxy

Base class for protocol classes.

Functions

observer(...)

create_proxy(→ create_proxy.T)

Module Contents

logger
Parser: TypeAlias = Callable[[S], T]
ModifiedEvent: TypeAlias = DirModifiedEvent | FileModifiedEvent
class Proxy[source]

Bases: Protocol

Base class for protocol classes.

Protocol classes are defined as:

class Proto(Protocol):
    def meth(self) -> int:
        ...

Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing).

For example:

class C:
    def meth(self) -> int:
        return 0

def func(x: Proto) -> int:
    return x.meth()

func(C())  # Passes static type check

See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as:

class GenProto[T](Protocol):
    def meth(self) -> T:
        ...
__subject__: Proxy.T
class BaseProxy[source]

Bases: Proxy[BaseProxy.T]

Base class for protocol classes.

Protocol classes are defined as:

class Proto(Protocol):
    def meth(self) -> int:
        ...

Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing).

For example:

class C:
    def meth(self) -> int:
        return 0

def func(x: Proto) -> int:
    return x.meth()

func(C())  # Passes static type check

See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as:

class GenProto[T](Protocol):
    def meth(self) -> T:
        ...
__getattr__(name)[source]
__getitem__(key)[source]
classmethod create(*args: BaseProxy.create.P, **kwargs: BaseProxy.create.P) T[source]
class FileProxy(*, logger: logging.Logger | None = None)[source]

Bases: BaseProxy[FileProxy.T], watchdog.events.LoggingEventHandler

Base class for protocol classes.

Protocol classes are defined as:

class Proto(Protocol):
    def meth(self) -> int:
        ...

Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing).

For example:

class C:
    def meth(self) -> int:
        return 0

def func(x: Proto) -> int:
    return x.meth()

func(C())  # Passes static type check

See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as:

class GenProto[T](Protocol):
    def meth(self) -> T:
        ...
path: str
parser: Parser[FileProxy.T, str]
mutex: threading.Lock
__subject__: FileProxy.T
__post_init__()[source]
__hash__()[source]
property event_filter: list[type[watchdog.events.FileSystemEvent]]
property content: str
update()[source]
on_modified(event: ModifiedEvent)[source]

Called when a file or directory is modified.

Parameters:

event (DirModifiedEvent or FileModifiedEvent) – Event representing file/directory modification.

class LiteralProxy[source]

Bases: BaseProxy[LiteralProxy.T]

Base class for protocol classes.

Protocol classes are defined as:

class Proto(Protocol):
    def meth(self) -> int:
        ...

Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing).

For example:

class C:
    def meth(self) -> int:
        return 0

def func(x: Proto) -> int:
    return x.meth()

func(C())  # Passes static type check

See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as:

class GenProto[T](Protocol):
    def meth(self) -> T:
        ...
content: LiteralProxy.S
parser: Parser[LiteralProxy.T, LiteralProxy.S]
__subject__: LiteralProxy.T
__post_init__()[source]
observer(*proxies: Proxy[observer.T], cls: watchdog.observers.ObserverType = Observer) collections.abc.Generator[watchdog.observers.api.BaseObserver][source]
create_proxy(content: str | None, path: os.PathLike, parser: Parser[create_proxy.T, str], default: str) create_proxy.T[source]