a ÕDOg9ã@sRddlZe d¡jZe d¡jZe d¡Ze d¡Ze d¡Z[Gdd„dƒZdS) éNz[a-zA-Z][-_.a-zA-Z0-9]*\s*z(\'[^\']*\'|"[^"]*")\s*z--\s*>z ]\s*]\s*>z]\s*>c@sŒeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd Zd d „Z d"dd„Z d#dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!S)$Ú ParserBasecCs|jturtdƒ‚dS)Nz)_markupbase.ParserBase must be subclassed)Ú __class__rÚ RuntimeError©Úself©rú0/opt/alt/python39/lib64/python3.9/_markupbase.pyÚ__init__s ÿzParserBase.__init__cCs tdƒ‚dS)Nz.subclasses of ParserBase must override error())ÚNotImplementedError)rÚmessagerrrÚerror sÿzParserBase.errorcCsd|_d|_dS)Nér©ÚlinenoÚoffsetrrrrÚreset$szParserBase.resetcCs |j|jfS©NrrrrrÚgetpos(szParserBase.getposcCsb||kr |S|j}| d||¡}|rN|j||_| d||¡}||d|_n|j|||_|S)NÚ r )ÚrawdataÚcountrÚrindexr)rÚiÚjrZnlinesÚposrrrÚ updatepos0s zParserBase.updateposÚc CsÂ|j}|d}|||d…dkr*|dS|||d…dvrBdSt|ƒ}|||d…dkrh| |¡S||dkr~| |¡S| ||¡\}}|dkrš|S|d kr¨d |_||kr¾||}|dkrø||d|…}|d kræ| |¡n | |¡|dS|d vr t||ƒ}|sdS|  ¡}n|d vr<| ||¡\} }nt||jvrR|d}n^|dkrž|d krx|  |d|¡}n$|d vr’|  d|¡n |  d¡n|  d||¡|dkr¨|Sq¨dS)Nér ú>)ú-réÿÿÿÿz--ú[rZdoctyperz"'Z4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ>ZlinktypeÚlinkÚelementÚattlistz&unsupported '[' char in %s declarationz"unexpected '[' char in declarationz!unexpected %r char in declaration) rÚlenÚ parse_commentÚparse_marked_sectionÚ _scan_nameÚ_decl_othercharsZ handle_declÚ unknown_declÚ_declstringlit_matchÚendÚ_parse_doctype_subsetr ) rrrrÚnZdecltypeÚcÚdataÚmÚnamerrrÚparse_declaration@sZ                  ÿzParserBase.parse_declarationr cCs®|j}| |d|¡\}}|dkr&|S|dvr@t ||d¡}n8|dvrZt ||d¡}n| d||d|…¡d}|s€dS|r¤| d¡}| ||d|…¡| d¡S)Nér>ZincludeZrcdataZtempZcdataÚignore>ÚifZendifÚelsez+unknown status keyword %r in marked sectionr ) rr(Ú_markedsectioncloseÚsearchÚ_msmarkedsectioncloser Ústartr*r,)rrÚreportrZsectNamerÚmatchrrrr'’s  zParserBase.parse_marked_sectioncCsj|j}|||d…dkr$| d¡t ||d¡}|sr?r)r<>r$Znotationr#Zentityz)unknown declaration %r in internal subsetZ_parse_doctype_ú%ú;ú]rz%unexpected char after internal subsetz%unexpected char %r in internal subset)rr%rr r&r(ÚgetattrÚisspace) rrÚ declstartposrr.rr/Úsr2Zmethrrrr-·sp     ÿ             z ParserBase._parse_doctype_subsetcCsF| ||¡\}}|dkrdS|j}d||d…vrB| d|¡dSdS)Nr rr )r(rÚfind)rrrGr2rrrrrÚ_parse_doctype_elementúsz!ParserBase._parse_doctype_elementcCs¶|j}| ||¡\}}|||d…}|dkr2dS|dkrB|dS| ||¡\}}|dkr^|S|||d…}|dkrzdS|dkrØd||d…vr¤| d|¡d}ndS|||d… ¡rÆ|d}q¨||d…sèdSn| ||¡\}}|||d…}|sdS|dvrDt||ƒ}|r&| ¡}ndS|||d…}|sDdS|d kr ||d…d krddS| |d|¡\}}|dkr†|S|||d…}|s dS|dkrB|dSqBdS) Nr rr rrú(ú)ú'"ú#)rr(rIrFr+r,)rrrGrr2rr/r1rrrÚ_parse_doctype_attlistsX       z!ParserBase._parse_doctype_attlistcCs| ||¡\}}|dkr|S|j}|||d…}|s:dS|dkrJ|dS|dvrnt||ƒ}|sddS| ¡}q"| ||¡\}}|dkr"|Sq"dS)Nrr r rrM)r(rr+r,)rrrGr2rrr/r1rrrÚ_parse_doctype_notation>s"  z"ParserBase._parse_doctype_notationcCsä|j}|||d…dkrR|d}|||d…}|s:dS| ¡rP|d}q"qVq"n|}| ||¡\}}|dkrr|S|j||d…}|sŒdS|dvr²t||ƒ}|r¬| ¡}qÞdSqr|dkrÂ|dS| ||¡\}}|dkrr|SqrdS)Nr rBr rrMr)rrFr(r+r,)rrrGrrr/r2r1rrrÚ_parse_doctype_entityUs4   z ParserBase._parse_doctype_entitycCs†|j}t|ƒ}||krdSt||ƒ}|r\| ¡}| ¡}|t|ƒ|krLdS| ¡| ¡fS| ||¡| d|||d…¡dS)N)Nr zexpected name token at %ré) rr%Ú_declname_matchÚgroupÚstripÚlowerr,rr )rrrGrr.r1rHr2rrrr(ys  ÿzParserBase._scan_namecCsdSrr)rr0rrrr*‹szParserBase.unknown_declN)r )r )Ú__name__Ú __module__Ú __qualname__r r rrrr)r3r'r&r-rJrOrPrQr(r*rrrrrs  R  C 9$r) ÚreÚcompiler=rSr+r@r8r:rrrrrÚs