def get_source(self, environment, template):
pieces = jinja2.loaders.split_template_path(template)<EOL>for searchpath in self.searchpath:<EOL><INDENT>filename = os.path.join(searchpath, *pieces)<EOL>if self.enable_glob:<EOL><INDENT>files = sorted(glob.glob(filename))<EOL><DEDENT>else:<EOL><INDENT>files = [filename]<EOL><DEDENT>contents_mtimes = list(_load_file_itr(files, self.encoding))<EOL>if not contents_mtimes:<EOL><INDENT>continue<EOL><DEDENT>contents = '<STR_LIT>'.join(cm[<NUM_LIT:0>] for cm in contents_mtimes)<EOL>mtimes = [cm[<NUM_LIT:1>] for cm in contents_mtimes]<EOL>def uptodate():<EOL><INDENT>"""<STR_LIT>"""<EOL>try:<EOL><INDENT>return all(os.path.getmtime(fn) == mt for fn, mt<EOL>in zip(files, mtimes))<EOL><DEDENT>except OSError:<EOL><INDENT>return False<EOL><DEDENT><DEDENT>return contents, filename, uptodate<EOL><DEDENT>raise jinja2.exceptions.TemplateNotFound(template)<EOL>
.. seealso:: :meth:`jinja2.loaders.FileSystemLoader.get_source`