# Copyright (c) PARRRATE T&V 2021. All rights reserved. from bu4.parsing.codes import CODE_QOPN, CODE_QCLS from bu4.linkable.constructs.parsed import Parsed from bu4.parsing.extensions.extension import Extension from bu4.parsing.states.parsingread import ParsingRead from bu4.parsing.targets.apendswith import APEndsWith from bu4.transform.states.aftertransform import AfterTransform from bu4.transform.states.transformstate import TransformState __all__ = ('XQopn',) class XQopn(Extension[Parsed], code=CODE_QOPN): def apply(self) -> TransformState[Parsed]: return AfterTransform(ParsingRead(self.parser), APEndsWith(self.parser, CODE_QCLS, 'quot expected'))