def content(self): source_code = super(JSFile,self).content template = templates.file params = { "content":source_code } parents = [] root = self template = templates.module while root.index: root = root.index parents.insert(0,root) filename = os.path.normpath( os.path.join(self.index.path, self.src) ) params['name'] = root.manifest.name params['filename'] = filename if self.index.get_config('main',None) == self.src and self.index.to_call.count( filename ) == 0: self.index.to_call.append( filename ) logger.info('Added "%s" to "to call" list.'%filename) return template%params
import re class JSFile(Dependency): @property def content(self): source_code = super(JSFile,self).content template = templates.file params = { "content":source_code } parents = [] root = self template = templates.module while root.index: root = root.index parents.insert(0,root) filename = os.path.normpath( os.path.join(self.index.path, self.src) ) params['name'] = root.manifest.name params['filename'] = filename if self.index.get_config('main',None) == self.src and self.index.to_call.count( filename ) == 0: self.index.to_call.append( filename ) logger.info('Added "%s" to "to call" list.'%filename) return template%params FORMATS['js'] = JSFile logger.info('Associated JSFile class with "js" extension')
from jsbuild.index import Index from jsbuild.logging import logger from jsbuild.maps import FORMATS from os.path import basename class JSONIndex(Index): def parse(self): logger.debug('Parsing %s'%self.src) lib = __import__('json') return lib.loads(self.buffer) FORMATS['json'] = JSONIndex logger.info('Associated "json" extension with JSONIndex class')