MCPcopy
hub / github.com/igrek51/wat / _get_callable_signature

Function _get_callable_signature

wat/inspection/inspection.py:128–142  ·  view source on GitHub ↗
(name: str, obj)

Source from the content-addressed store, hash-verified

126
127
128def _get_callable_signature(name: str, obj) -> str:
129 try:
130 _signature = _format_signature(inspect.signature(obj))
131 except (ValueError, TypeError):
132 _signature = f'{RESET}({style.CODE}…{RESET})'
133
134 if inspect.isclass(obj):
135 prefix = 'class '
136 elif inspect.iscoroutinefunction(obj):
137 prefix = 'async def '
138 elif inspect.isfunction(obj) or inspect.ismethod(obj) or inspect.isbuiltin(obj) or hasattr(obj, '__name__'):
139 prefix = 'def '
140 else:
141 prefix = ''
142 return f'{style.KEYWORD}{prefix}{style.CALLABLE}{name}{RESET}{_signature}{RESET}'
143
144
145def _format_signature(sig: inspect.Signature) -> str:

Callers 5

test_signature_classFunction · 0.90
test_signature_colorsFunction · 0.90
_yield_inspect_linesFunction · 0.85
_iter_attributesFunction · 0.85

Calls 1

_format_signatureFunction · 0.85

Tested by 3

test_signature_classFunction · 0.72
test_signature_colorsFunction · 0.72