File "loaders.cpython-37.pyc"
Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python37/lib/python3.7/site-packages/jinja2/__pycache__/loaders.cpython-37.pyc
File size: 19.75 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit
B
G؊aX @ sN d Z ddlZddlZddlZddlZddlZddlZddl m
Z
ddlmZ ddlm
Z
ddlmZ ddlmZ dd lmZ dd
lmZ ejrddlmZ ddlmZ eeje d
ddZG dd dZG dd deZG dd deZG dd deZG dd deZ G dd deZ!G dd deZ"G dd deZ#G d d! d!eZ$dS )"zKAPI and implementations for loading templates from different data
sources.
N)abc)sha1)
import_module)
ModuleType )TemplateNotFound)internalcode)open_if_exists)Environment)Template)templatereturnc C sh g }x^| dD ]P}tjj|ks@tjjr4tjj|ks@|tjjkrJt| q|r|dkr|| qW |S )zSplit a path into segments and perform a sanity check. If it detects
'..' in the path it will raise a `TemplateNotFound` error.
/.)splitospathsepaltseppardirr append)r piecesZpiece r ?/opt/alt/python37/lib/python3.7/site-packages/jinja2/loaders.pysplit_template_path s
r c @ s e Zd ZdZdZdeejeeje ejej g e
f f dddZeje ddd Z
eddeejejeejf ddd
dZd
S )
BaseLoadera Baseclass for all loaders. Subclass this and override `get_source` to
implement a custom loading mechanism. The environment provides a
`get_template` method that calls the loader's `load` method to get the
:class:`Template` object.
A very basic example for a loader that looks up templates on the file
system could look like this::
from jinja2 import BaseLoader, TemplateNotFound
from os.path import join, exists, getmtime
class MyLoader(BaseLoader):
def __init__(self, path):
self.path = path
def get_source(self, environment, template):
path = join(self.path, template)
if not exists(path):
raise TemplateNotFound(template)
mtime = getmtime(path)
with open(path) as f:
source = f.read()
return source, path, lambda: mtime == getmtime(path)
Tr
)environmentr r
c C s&