Skip to content

context

appimage_updater.ui.output.context

Output formatter context management.

OutputFormatterContext(formatter)

Context manager for output formatter.

Parameters:

Name Type Description Default
formatter OutputFormatter

Output formatter to use in this context

required
Source code in src/appimage_updater/ui/output/context.py
def __init__(self, formatter: OutputFormatter):
    """Initialize context manager.

    Args:
        formatter: Output formatter to use in this context
    """
    self.formatter = formatter
    self.token: Token[OutputFormatter | None] | None = None

formatter = formatter instance-attribute

token = None instance-attribute

get_output_formatter()

Get the current output formatter from context.

Returns:

Type Description
OutputFormatter

Current output formatter

Raises:

Type Description
RuntimeError

If no output formatter has been set in the current context

Source code in src/appimage_updater/ui/output/context.py
def get_output_formatter() -> OutputFormatter:
    """Get the current output formatter from context.

    Returns:
        Current output formatter

    Raises:
        RuntimeError: If no output formatter has been set in the current context
    """
    formatter = _output_formatter.get()
    if formatter is None:
        raise RuntimeError(
            "No output formatter set in current context. Ensure code is executed within an OutputFormatterContext."
        )
    return formatter

set_output_formatter(formatter)

Set the output formatter in context.

Parameters:

Name Type Description Default
formatter OutputFormatter

Output formatter to set

required
Source code in src/appimage_updater/ui/output/context.py
def set_output_formatter(formatter: OutputFormatter) -> None:
    """Set the output formatter in context.

    Args:
        formatter: Output formatter to set
    """
    _output_formatter.set(formatter)