Token and production containers for use in the tokenizer and parser.



Mixin defining interface to retrieve strings containing script lines.


Container with concrete token instances.



Mixin for containers that contain arguments.

BaseCustomToken(lineno, start_index, ...)

A custom token.


Mixin for containers that contain extra tokens.

KatArray(extra, arguments)

Represents a kat script array.

KatBooleanToken(lineno, start_index, ...)

A boolean token.

KatBounds(start, stop)

Kat script start and stop bounds.

KatCoordinate(lineno, index)

Kat script file coordinate supporting comparison operations.

KatElement(directive, extra, arguments, name)

Represents a parsed element statement and any corresponding arguments.

KatExpression(extra, arguments, operator)

Represents a kat script expression.


Container with kat script lines (no concrete tokens).

KatFunction(directive, extra, arguments)

Represents a parsed kat function statement and any corresponding arguments.

KatGroupedExpression(extra, arguments)

Represents a kat script expression group, i.e. (<expression>).

KatKwarg(key, equals, value)

Represents a kat argument containing a key, value and '='.

KatMetaToken(lineno, start_index, ...)

A token that may not map to a real token.

KatNoneToken(lineno, start_index, ...)

A null token.

KatNumberToken(lineno, start_index, ...)

A number token.

KatNumericalArray(extra, arguments)

Represents a kat script numerical array.

KatScript(extra, arguments)

Represents a kat script.


Represents a top level kat script item.

KatStringToken(lineno, start_index, ...)

A string token.

KatToken(lineno, start_index, stop_index, ...)

A real token with the corresponding text's location, type and value.

KatWhitespaceToken(lineno, start_index, ...)

A whitespace token.