| # import of necessary files
from SourceMap import *
from delimeters import *
from common import *
# SourceMap variable
sourceMap = SourceMap()
# chosed delimeter rules (JavaScript in this case)
rules = jsRules
# source code to map [requires specified JS file]
source = file_get_contents("dojo.js.uncompressed.js")
# Benchmark: start time variable
startTime = getTime(None)
# generated map
codeMap = sourceMap.getMap(source, rules)
# Benchmark: end time variable
endTime = getTime(startTime)
# External output and Verify
tempCode = ""
correctParse = ""
output = ""
b = len(codeMap)
for a in range(0, b):
	tempCode = source[codeMap[a]["start"]:codeMap[a]["end"]]
	correctParse = correctParse + tempCode
	output = output + "<strong>" + codeMap[a]["name"] + "</strong><pre>" + tempCode.replace("<", "<").replace(">", ">") + "</pre>"
	if a + 1 < b:
		output = output + "<hr />";
if correctParse == source:
	output = "<h3>Source file successfull mapped [" + str(endTime) + " sec.] - Map length: " + str(b) + "</h3><hr />" + output
else:
	output = "<h3>WARNING, map failure or invalid source code [" + str(endTime) + " sec.] - Map length: " + str(b) + "</h3><hr />" + output
output = """<html>
	<head>
		<title>Class SourceMap :: Python Version</title>
		<style type="text/css">
		* {
			margin:2;
			padding:0;
			font-family: Verdana, Helvetica, sans-serif;
			font-size: 8pt;
		}
		</style>
	</head>
	<body>
		""" + output + """
	</body>
</html>"""
fp = file("testpy.html", "w")
fp.write(output)
fp.close()
 |