mirror of
https://github.com/hexedtech/codemp.git
synced 2024-11-22 15:24:48 +01:00
chore: updated type hints with some sliver of documentation
This commit is contained in:
parent
f743fbcb03
commit
d6594928d9
1 changed files with 39 additions and 14 deletions
53
dist/py/codemp.pyi
vendored
53
dist/py/codemp.pyi
vendored
|
@ -1,48 +1,69 @@
|
||||||
from typing import Tuple
|
from typing import Tuple, Optional
|
||||||
|
|
||||||
class PyLogger:
|
class PyLogger:
|
||||||
|
"""
|
||||||
|
A python wrapper for the tracing subscriber so that we can
|
||||||
|
receive logging messages from the library.
|
||||||
|
"""
|
||||||
def __init__(self, debug) -> None: ...
|
def __init__(self, debug) -> None: ...
|
||||||
async def listen(self) -> str | None: ...
|
async def listen(self) -> Optional[str]: ...
|
||||||
|
|
||||||
|
|
||||||
class TextChange:
|
class TextChange:
|
||||||
|
"""
|
||||||
|
Editor agnostic representation of a text change, it translate between internal
|
||||||
|
codemp text operations and editor operations
|
||||||
|
"""
|
||||||
start: int
|
start: int
|
||||||
end: int
|
end: int
|
||||||
content: str
|
content: str
|
||||||
|
|
||||||
def is_deletion(self) -> bool: ...
|
def is_delete(self) -> bool: ...
|
||||||
def is_addition(self) -> bool: ...
|
def is_insert(self) -> bool: ...
|
||||||
def is_empty(self) -> bool: ...
|
def is_empty(self) -> bool: ...
|
||||||
def apply(self, txt: str) -> str: ...
|
def apply(self, txt: str) -> str: ...
|
||||||
def from_diff(self, before: str, after: str) -> TextChange: ...
|
|
||||||
def index_to_rowcol(self, txt: str, index: int) -> Tuple[int, int]: ...
|
|
||||||
|
|
||||||
|
|
||||||
class BufferController:
|
class BufferController:
|
||||||
def content(self) -> str: ...
|
"""
|
||||||
def send(self, start: int, end: int, txt: str) -> None: ...
|
Handle to the controller for a specific buffer, which manages the back and forth
|
||||||
async def try_recv(self) -> TextChange | None: ...
|
of operations to and from other peers.
|
||||||
|
"""
|
||||||
|
async def content(self) -> str: ...
|
||||||
|
async def send(self, start: int, end: int, txt: str) -> None: ...
|
||||||
|
async def try_recv(self) -> Optional[TextChange]: ...
|
||||||
async def recv(self) -> TextChange: ...
|
async def recv(self) -> TextChange: ...
|
||||||
async def poll(self) -> None: ...
|
async def poll(self) -> None: ...
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class Cursor:
|
class Cursor:
|
||||||
|
"""
|
||||||
|
An Editor agnostic cursor position representation
|
||||||
|
"""
|
||||||
start: Tuple[int, int]
|
start: Tuple[int, int]
|
||||||
end: Tuple[int, int]
|
end: Tuple[int, int]
|
||||||
buffer: str
|
buffer: str
|
||||||
user: str # can be an empty string
|
user: Optional[str] # can be an empty string
|
||||||
|
|
||||||
|
|
||||||
class CursorController:
|
class CursorController:
|
||||||
def send(self, path: str, start: Tuple[int, int], end: Tuple[int, int]) -> None: ...
|
"""
|
||||||
def try_recv(self) -> Cursor | None: ...
|
Handle to the controller for a workspace, which manages the back and forth of
|
||||||
|
cursor movements to and from other peers
|
||||||
|
"""
|
||||||
|
async def send(self, path: str, start: Tuple[int, int], end: Tuple[int, int]) -> None: ...
|
||||||
|
async def try_recv(self) -> Optional[Cursor]: ...
|
||||||
async def recv(self) -> Cursor: ...
|
async def recv(self) -> Cursor: ...
|
||||||
async def poll(self) -> None: ...
|
async def poll(self) -> None: ...
|
||||||
def stop(self) -> bool: ...
|
def stop(self) -> bool: ...
|
||||||
|
|
||||||
|
|
||||||
class Workspace:
|
class Workspace:
|
||||||
|
"""
|
||||||
|
Handle to a workspace inside codemp. It manages buffers.
|
||||||
|
A cursor is tied to the single workspace.
|
||||||
|
"""
|
||||||
async def create(self, path: str) -> None: ...
|
async def create(self, path: str) -> None: ...
|
||||||
async def attach(self, path: str) -> BufferController: ...
|
async def attach(self, path: str) -> BufferController: ...
|
||||||
def detach(self, path: str) -> bool: ...
|
def detach(self, path: str) -> bool: ...
|
||||||
|
@ -52,13 +73,17 @@ class Workspace:
|
||||||
async def delete(self, path: str) -> None: ...
|
async def delete(self, path: str) -> None: ...
|
||||||
def id(self) -> str: ...
|
def id(self) -> str: ...
|
||||||
def cursor(self) -> CursorController: ...
|
def cursor(self) -> CursorController: ...
|
||||||
def buffer_by_name(self, path: str) -> BufferController | None: ...
|
def buffer_by_name(self, path: str) -> Optional[BufferController]: ...
|
||||||
def buffer_list(self) -> list[str]: ...
|
def buffer_list(self) -> list[str]: ...
|
||||||
def filetree(self) -> list[str]: ...
|
def filetree(self) -> list[str]: ...
|
||||||
|
|
||||||
|
|
||||||
class Client:
|
class Client:
|
||||||
def __init__(self, host: str, username: str, password: str) -> None: ...
|
"""
|
||||||
|
Handle to the actual client that manages the session. It manages the connection
|
||||||
|
to a server and joining/creating new workspaces
|
||||||
|
"""
|
||||||
|
def __new__(cls, host: str, username: str, password: str) -> None: ...
|
||||||
async def join_workspace(self, workspace: str) -> Workspace: ...
|
async def join_workspace(self, workspace: str) -> Workspace: ...
|
||||||
def leave_workspace(self, workspace: str) -> bool: ...
|
def leave_workspace(self, workspace: str) -> bool: ...
|
||||||
def get_workspace(self, id: str) -> Workspace: ...
|
def get_workspace(self, id: str) -> Workspace: ...
|
||||||
|
|
Loading…
Reference in a new issue