-
-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Expand file tree
/
Copy pathgenerics.py
More file actions
32 lines (24 loc) · 807 Bytes
/
generics.py
File metadata and controls
32 lines (24 loc) · 807 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# encoding: utf-8
"""Generic functions for extending IPython."""
from __future__ import annotations
from typing import Any
from IPython.core.error import TryNext
from functools import singledispatch
@singledispatch
def inspect_object(obj: Any) -> None:
"""Called when you do obj?"""
raise TryNext
@singledispatch
def complete_object(obj: Any, prev_completions: list[str]) -> list[str]:
"""Custom completer dispatching for python objects.
Parameters
----------
obj : object
The object to complete.
prev_completions : list
List of attributes discovered so far.
This should return the list of attributes in obj. If you only wish to
add to the attributes already discovered normally, return
own_attrs + prev_completions.
"""
raise TryNext