Source code for FuPy.tracing_laziness

"""
Definitions to support evaluation tracing of laziness functionality.

Copyright (c) 2024 - Eindhoven University of Technology, The Netherlands

This software is made available under the terms of the MIT License.
"""
from typing import override

from . import tracing as tr

__all__ = [
    "SuspensionStep", "EvaluationStep", "GettingStep",
]


[docs] class SuspensionStep(tr.BaseStep): """Class for `Lazy` creation steps. """ def __init__(self, note: str) -> None: super().__init__(f"{note}") @override def __str__(self) -> str: return f"Suspend: {super().__str__()}"
[docs] class EvaluationStep(tr.BaseStep): """Class for evaluation steps. """ def __init__(self, note: str) -> None: super().__init__(f"{note}") @override def __str__(self) -> str: return f"Evaluate: {super().__str__()}"
[docs] class GettingStep(tr.BaseStep): """Class for getting steps (from cache). """ def __init__(self, note: str) -> None: super().__init__(f"{note}") @override def __str__(self) -> str: return f"Get: {super().__str__()}"