Added js Dependency Builder

This commit is contained in:
Pratik Vyas 2011-06-10 16:35:21 +05:30
parent 6163bb00a5
commit 5b1792ae98

View file

@ -0,0 +1,23 @@
class jsDependencyBuilder:
def read_code(self,js_path):
try:
f = open(js_path)
try:
code = f.read()
finally:
f.close
except Exception, e:
raise e
return code
def read_imports(self,code):
import re
p = re.compile('\$import\(\' (?P<name> [^)]*)\' \)', re.VERBOSE)
return p.findall(code)
def build_dependency(self,js_path,depends= set()):
code = self.read_code(js_path)
curdepend = self.read_imports(code)
for i in curdepend:
if i not in depends:
depends.add(i)
depends = depends.union( self.build_dependency(i,depends))
return depends