Beispiel #1
0
 def _compile_from_file(self, path, filename):
     if path is not None:
         util.verify_directory(os.path.dirname(path))
         filemtime = os.stat(filename)[stat.ST_MTIME]
         if not os.path.exists(path) or \
                 os.stat(path)[stat.ST_MTIME] < filemtime:
             data = util.read_file(filename)
             _compile_module_file(self, data, filename, path,
                                  self.module_writer)
         module = compat.load_module(self.module_id, path)
         del sys.modules[self.module_id]
         if module._magic_number != codegen.MAGIC_NUMBER:
             data = util.read_file(filename)
             _compile_module_file(self, data, filename, path,
                                  self.module_writer)
             module = compat.load_module(self.module_id, path)
             del sys.modules[self.module_id]
         ModuleInfo(module, path, self, filename, None, None)
     else:
         # template filename and no module directory, compile code
         # in memory
         data = util.read_file(filename)
         code, module = _compile_text(self, data, filename)
         self._source = None
         self._code = code
         ModuleInfo(module, None, self, filename, code, None)
     return module
Beispiel #2
0
 def _compile_from_file(self, path, filename):
     if path is not None:
         util.verify_directory(os.path.dirname(path))
         filemtime = os.stat(filename)[stat.ST_MTIME]
         if not os.path.exists(path) or \
                 os.stat(path)[stat.ST_MTIME] < filemtime:
             data = util.read_file(filename)
             _compile_module_file(
                 self,
                 data,
                 filename,
                 path,
                 self.module_writer)
         module = compat.load_module(self.module_id, path)
         del sys.modules[self.module_id]
         if module._magic_number != codegen.MAGIC_NUMBER:
             data = util.read_file(filename)
             _compile_module_file(
                 self,
                 data,
                 filename,
                 path,
                 self.module_writer)
             module = compat.load_module(self.module_id, path)
             del sys.modules[self.module_id]
         ModuleInfo(module, path, self, filename, None, None)
     else:
         # template filename and no module directory, compile code
         # in memory
         data = util.read_file(filename)
         code, module = _compile_text(
             self,
             data,
             filename)
         self._source = None
         self._code = code
         ModuleInfo(module, None, self, filename, code, None)
     return module
Beispiel #3
0
 def source(self):
     if self.template_source is not None:
         if self.module._source_encoding and \
                 not isinstance(self.template_source, compat.text_type):
             return self.template_source.decode(
                 self.module._source_encoding)
         else:
             return self.template_source
     else:
         data = util.read_file(self.template_filename)
         if self.module._source_encoding:
             return data.decode(self.module._source_encoding)
         else:
             return data
Beispiel #4
0
 def source(self):
     if self.template_source is not None:
         if self.module._source_encoding and \
                 not isinstance(self.template_source, compat.text_type):
             return self.template_source.decode(
                 self.module._source_encoding)
         else:
             return self.template_source
     else:
         data = util.read_file(self.template_filename)
         if self.module._source_encoding:
             return data.decode(self.module._source_encoding)
         else:
             return data