Cheetah.Parser module

Parser classes for Cheetah’s Compiler

Classes:
ParseError( Exception ) _LowLevelParser( Cheetah.SourceReader.SourceReader ), basically a lexer _HighLevelParser( _LowLevelParser ) Parser === _HighLevelParser (an alias)
class Cheetah.Parser.ArgList

Bases: object

Used by _LowLevelParser.getArgList()

add_argument(name)
add_default(token)
merge()
next()
class Cheetah.Parser.CheetahVariable(nameChunks, useNameMapper=True, cacheToken=None, rawSource=None)

Bases: object

exception Cheetah.Parser.ForbiddenDirective(stream, msg='Invalid Syntax', extMsg='', lineno=None, col=None)

Bases: Cheetah.Parser.ForbiddenSyntax

exception Cheetah.Parser.ForbiddenExpression(stream, msg='Invalid Syntax', extMsg='', lineno=None, col=None)

Bases: Cheetah.Parser.ForbiddenSyntax

exception Cheetah.Parser.ForbiddenSyntax(stream, msg='Invalid Syntax', extMsg='', lineno=None, col=None)

Bases: Cheetah.Parser.ParseError

exception Cheetah.Parser.ParseError(stream, msg='Invalid Syntax', extMsg='', lineno=None, col=None)

Bases: ValueError

report()
Cheetah.Parser.Parser

alias of _HighLevelParser

class Cheetah.Parser.Placeholder(nameChunks, useNameMapper=True, cacheToken=None, rawSource=None)

Bases: Cheetah.Parser.CheetahVariable

Cheetah.Parser.any(*choices)
Cheetah.Parser.cachedRegex(pattern)
Cheetah.Parser.escapeRegexChars(txt, escapeRE=re.compile('([\\$\\^\\*\\+\\.\\?\\{\\}\\[\\]\\(\\)\\|\\\\])'))

Return a txt with all special regular expressions chars escaped.

Cheetah.Parser.group(*choices)
Cheetah.Parser.makeTripleQuoteRe(start, end)
Cheetah.Parser.maybe(*choices)
Cheetah.Parser.namedGroup(name, *choices)
Cheetah.Parser.nongroup(*choices)