18 lines
476 B
Python
18 lines
476 B
Python
# 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)
|