Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
§ Éß]j#ãób—dZddlmZddlmZddlmZddlmZGd„de¦«Zd„Z d „Z d S) z_Functions that expose information about templates that might be interesting for introspection. é)Únodes)Ú iteritems)Ú string_types)Ú CodeGeneratorcó$—eZdZdZd„Zd„Zd„ZdS)ÚTrackingCodeGeneratorz.We abuse the code generator for introspection.cóZ—tj||dd¦«t¦«|_dS)Nz)rÚ__init__ÚsetÚundeclared_identifiers)ÚselfÚ environments úk/builddir/build/BUILD/imunify360-venv-2.6.3/opt/imunify360/venv/lib/python3.11/site-packages/jinja2/meta.pyr zTrackingCodeGenerator.__init__s-€ÝÔ˜t [Ð2CÐEVÑWÔWÐWÝ&)¡e¤eˆÔ#Ð#Ð#ócó—dS)z Don't write.N©)r Úxs rÚwritezTrackingCodeGenerator.writes€€€rcóЗtj||¦«t|jj¦«D]6\}\}}|dkr(||jjvr|j |¦«Œ7dS)z$Remember all undeclared identifiers.ÚresolveN) rÚ enter_framerÚsymbolsÚloadsrÚglobalsr Úadd)r ÚframeÚ_ÚactionÚparams rrz!TrackingCodeGenerator.enter_framesw€åÔ! $¨Ñ.Ô.Ð.Ý"+¨E¬MÔ,?Ñ"@Ô"@ð 7ð 7Ñ ˆA‰�˜Ø˜Ò"Ð" u°DÔ4DÔ4LÐ'LÐ'LØÔ+×/Ò/°Ñ6Ô6Ð6øð 7ð 7rN)Ú__name__Ú __module__Ú __qualname__Ú__doc__r rrrrrrr sG€€€€€Ø8Ð8ð,ð,ð,ðððð7ð7ð7ð7ð7rrcób—t|j¦«}| |¦«|jS)aReturns a set of all variables in the AST that will be looked up from the context at runtime. Because at compile time it's not known which variables will be used depending on the path the execution takes at runtime, all variables are returned. >>> from jinja2 import Environment, meta >>> env = Environment() >>> ast = env.parse('{% set foo = 42 %}{{ bar + foo }}') >>> meta.find_undeclared_variables(ast) == set(['bar']) True .. admonition:: Implementation Internally the code generator is used for finding undeclared variables. This is good to know because the code generator might raise a :exc:`TemplateAssertionError` during compilation and as a matter of fact this function can currently raise that exception as well. )rrÚvisitr )ÚastÚcodegens rÚfind_undeclared_variablesr(s.€õ&$ C¤OÑ4Ô4€GØ ‡M‚M�#ÑÔÐØ Ô )Ð)rc#óK—| tjtjtjtjf¦«D�]@}t |jtj¦«s‚t |jtj tj f¦«rR|jj D]D}t |tj¦«r$t |j t¦«r |j V—Œ@dV—ŒEndV—Œ¤t |jj t¦«r|jj V—ŒÒt |tj¦«rPt |jj ttf¦«r*|jj D]}t |t¦«r|V—Œ�Œ>> from jinja2 import Environment, meta >>> env = Environment() >>> ast = env.parse('{% extends "layout.html" %}{% include helper %}') >>> list(meta.find_referenced_templates(ast)) ['layout.html', None] This function is useful for dependency tracking. For example if you want to rebuild parts of the website after a layout template has changed. N)Úfind_allrÚExtendsÚ FromImportÚImportÚIncludeÚ isinstanceÚtemplateÚConstÚTupleÚListÚitemsÚvaluerÚtupleÚlist)r&ÚnodeÚ template_names rÚfind_referenced_templatesr:5s�èè€ð— ’ Ý Œ�Ô(­%¬,½¼ ÐFñôð!ñ!ˆõ˜$œ-­¬Ñ5Ô5ð å˜$œ-­%¬+µu´zÐ)BÑCÔCð Ø%)¤]Ô%8ð#ð#�Mõ" -µ´Ñ=Ô=ð#Ý% mÔ&9½<ÑHÔHð6Ø"/Ô"5Ð5Ð5Ð5øð#˜ ˜ ˜ ˜ ð#ð� � � Ø å �d”mÔ)­<Ñ 8Ô 8ð Ø”-Ô%Ð %Ð %Ð %Ð %õ˜�eœmÑ ,Ô ,ð µØ ŒMÔ ¥%­ ñ2 ô2 ð ð"&¤Ô!4ð (ð (� ݘm­\Ñ:Ô:ð(Ø'Ð'Ð'Ð'øñ (ð ˆJˆJˆJ‰JðC!ð!rN) r#ÚrÚ_compatrrÚcompilerrrr(r:rrrúr>s«ððððÐÐÐÐÐØÐÐÐÐÐØ!Ð!Ð!Ð!Ð!Ð!Ø#Ð#Ð#Ð#Ð#Ð#ð7ð7ð7ð7ð7˜Mñ7ô7ð7ð$*ð*ð*ð00ð0ð0ð0ð0r