package documentation

Undocumented

Module __main__ Undocumented

From __init__.py:

Class ApiObject The base class for representing "API Objects". Any API object is any addressable entity in code, be that a variable/constant, function, class or module.
Class Argument Represents a #Function argument.
Class Class Represents a class definition.
Class ClassSemantic A list of well-known properties and behaviour that can be attributed to a class.
Class Decoration Represents a decorator on a #Class or #Function.
Class Docstring Represents a docstring for an #APIObject, i.e. it's content and location. This class is a subclass of `str` for backwards compatibility reasons. Use the #content property to access the docstring content over the #Docstring value directory.
Class Function Represents a function definition. This can be in a #Module for plain functions or in a #Class for methods. The #decorations need to be introspected to understand if the function has a special purpose (e...
Class FunctionSemantic A list of well-known properties and behaviour that can be attributed to a function.
Class HasLocation Base class for objects that have a #Location.
Class HasMembers Base class for API objects that can have members, e.g. #Class and #Module.
Class Indirection Represents an imported name. It can be used to properly find the full name target of a link written with a local name.
Class Location Represents the location of an #ApiObject by a filename and line number.
Class Module Represents a module, basically a named container for code/API objects. Modules may be nested in other modules. Be aware that for historical reasons, some loaders lile #docspec_python by default do not return nested modules, even if nesting would be appropriate (and instead the #Module...
Class Variable Represents a variable assignment (e.g. for global variables (often used as constants) or class members).
Class VariableSemantic A list of well-known properties and behaviour that can be attributed to a variable/constant.
Function dump_module Dumps a module to the specified target or returns it as plain structured data.
Function filter_visit Visits all *objects* recursively, applying the *predicate* in the specified *order*. If the predicate returrns #False, the object will be removed from it's containing list.
Function get_member Generic function to retrieve a member from an API object. This will always return #None for objects that don't support members (eg. #Function and #Variable).
Function load_module Loads a #Module from the specified *source*, which may be either a filename, a file-like object to read from or plain structured data.
Function load_modules Loads a stream of modules from the specified *source*. Similar to #load_module(), the *source* can be a filename, file-like object or a list of plain structured data to deserialize from.
Function visit Visits all *objects*, applying *func* in the specified *order*.
Variable __author__ Undocumented
Variable __version__ Undocumented
Type Alias _Members Undocumented
Type Alias _ModuleMembers Undocumented
Variable _MemberType Undocumented
Variable _ModuleMemberType Undocumented
__author__: str = (source)

Undocumented

__version__: str = (source)

Undocumented

_MemberType = (source)

Undocumented

_ModuleMembers = (source)

Undocumented

Value
t.Union[Variable, Function, Class, Module, Indirection]
_ModuleMemberType = (source)

Undocumented

def load_module(source: t.Union[str, t.TextIO, t.Dict[str, t.Any]], filename: t.Optional[str] = None, loader: t.Callable[[t.IO[str]], t.Any] = json.load) -> Module: (source)

Loads a #Module from the specified *source*, which may be either a filename, a file-like object to read from or plain structured data. # Arguments source: The JSON source to load the module from. filename: The name of the source. This will be displayed in error messages if the deserialization fails. loader: A function for loading plain structured data from a file-like object. Defaults to #json.load(). # Returns The loaded `Module` object.

def load_modules(source: t.Union[str, t.TextIO, t.Iterable[t.Any]], filename: t.Optional[str] = None, loader: t.Callable[[t.IO[str]], t.Any] = json.load) -> t.Iterable[Module]: (source)

Loads a stream of modules from the specified *source*. Similar to #load_module(), the *source* can be a filename, file-like object or a list of plain structured data to deserialize from.

@t.overload
def dump_module(module: Module, target: t.Union[str, t.IO[str]], dumper: t.Callable[[t.Any, t.IO[str]], None] = json.dump):
@t.overload
def dump_module(module: Module, target: None = None, dumper: t.Callable[[t.Any, t.IO[str]], None] = json.dump) -> t.Dict[str, t.Any]:
(source)

Dumps a module to the specified target or returns it as plain structured data.

def filter_visit(objects: t.MutableSequence[ApiObject], predicate: t.Callable[[ApiObject], bool], order: str = 'pre') -> t.MutableSequence[ApiObject]: (source)

Visits all *objects* recursively, applying the *predicate* in the specified *order*. If the predicate returrns #False, the object will be removed from it's containing list. If an object is removed in pre-order, it's members will not be visited. :param objects: A list of objects to visit recursively. This list will be modified if the *predicate* returns #False for an object. :param predicate: The function to apply over all visited objects. :param order: The order in which the objects are visited. The default order is `'pre'` in which case the *predicate* is called before visiting the object's members. The order may also be `'post'`.

def visit(objects: t.Sequence[ApiObject], func: t.Callable[[ApiObject], t.Any], order: str = 'pre'): (source)

Visits all *objects*, applying *func* in the specified *order*.

def get_member(obj: ApiObject, name: str) -> t.Optional[ApiObject]: (source)

Generic function to retrieve a member from an API object. This will always return #None for objects that don't support members (eg. #Function and #Variable).