builtup4/bu4/transform/transform.py

18 lines
441 B
Python

# Copyright (c) PARRRATE T&V 2021. All rights reserved.
from typing import TypeVar
from bu4.transform.states.transformfinished import TransformFinished
from bu4.transform.states.transformstate import TransformState
__all__ = ('transform',)
T = TypeVar('T')
def transform(state: TransformState[T]) -> T:
while True:
if isinstance(state, TransformFinished):
return state.transformed
state = state.next()