import DTLexer import DTParser import DTExcept import ErrorHandler from SkunkExcept import * def compileTemplate(text, name=None, tagreg=None, meta=None): try: taglist = DTLexer.doTag(text, name) except DTExcept.DTLexicalError, val: # Ok, force the name here - its a decent hack Drew val.name = name raise val node = DTParser.parseit(text, taglist, tagreg, name) indent = 0 codeout = DTCompilerUtil.Output() DTCompilerUtil.genCodeNode(indent, codeout, tagreg, node.children, meta) return codeout.getText() def compileText(text, name): # Only catch syntax errors in the text, all else will fall through try: cobj = compile(text, name, 'exec') except SyntaxError, val: raise SkunkSyntaxError(name, text, val) return cobj
import DTCompilerUtil import DTLexer import DTParser import DTExcept import ErrorHandler from SkunkExcept import * def compileTemplate ( text, name = None, tagreg = None, meta = None ): try: taglist=DTLexer.doTag(text, name) except DTExcept.DTLexicalError, val: # Ok, force the name here - its a decent hack Drew val.name = name raise val node = DTParser.parseit(text, taglist, tagreg, name) indent=0 codeout=DTCompilerUtil.Output() DTCompilerUtil.genCodeNode ( indent, codeout, tagreg, node.children, meta ) return codeout.getText() def compileText(text, name): # Only catch syntax errors in the text, all else will fall through try: cobj = compile(text, name, 'exec') except SyntaxError, val: raise SkunkSyntaxError ( name, text, val ) return cobj