# Copyright (c) PARRRATE T&V 2021. All rights reserved. from typing import Callable from bu4.parsing.constructs.linked import Parsed from bu4.parsing.states.parsestate import ParseState from bu4.parsing.targets.pstarget import PSTarget __all__ = ('PSLambda',) class PSLambda(PSTarget): def __init__(self, lambda_: Callable[[Parsed], ParseState]): self.lambda_ = lambda_ def given(self, parsed: Parsed) -> ParseState: return self.lambda_(parsed)