Context Managers for Xonsh (xonsh.contexts)¶
Context management tools for xonsh.
-
class
xonsh.contexts.Block[source]¶ This is a context manager for obtaining a block of lines without actually executing the block. The lines are accessible as the ‘lines’ attribute. This must be used as a macro.
Attributes: - lines : list of str or None
Block lines as if split by str.splitlines(), if available.
- glbs : Mapping or None
Global execution context, ie globals().
- locs : Mapping or None
Local execution context, ie locals().
-
class
xonsh.contexts.Functor(args=(), kwargs=None, rtn='')[source]¶ This is a context manager that turns the block into a callable object, bound to the execution context it was created in.
Parameters: - args : Sequence of str, optional
A tuple of argument names for the functor.
- kwargs : Mapping of str to values or list of item tuples, optional
Keyword argument names and values, if available.
- rtn : str, optional
Name of object to return, if available.
Attributes: - func : function
The underlying function object. This defaults to none and is set after the the block is exited.