builtup4/bu4/parsing/states/parsingread.py

21 lines
530 B
Python

# Copyright (c) PARRRATE T&V 2021. All rights reserved.
from typing import TypeVar
from bu4.parsing.abstractparser import AbstractParser
from bu4.transform.states.transformstate import TransformState
__all__ = ('ParsingRead',)
T = TypeVar('T')
class ParsingRead(TransformState[T]):
def __init__(self, parser: AbstractParser[T]):
self.parser = parser
def next(self) -> TransformState[T]:
code = self.parser.read()
extension = self.parser.extension_for(code)
return extension.apply()