API reference¶
-
class
lina.
Formatter
(formatterType)[source]¶ Bases:
object
Base class for all formatters.
A formatter can be used to transform blocks/values during expansion.
-
class
lina.
FormatterType
[source]¶ Bases:
enum.Enum
The formatter type, either
Block
orValue
.-
Block
= 0¶
-
Value
= 1¶
-
-
exception
lina.
InvalidBlock
(message, position)[source]¶ Bases:
lina.TemplateException
An invalid block was encountered.
-
exception
lina.
InvalidFormatter
(message, position)[source]¶ Bases:
lina.TemplateException
An invalid formatter was encountered.
This exception is raised when a formatter could not be found or instantiated.
-
exception
lina.
InvalidNamedCharacterToken
(message, position)[source]¶ Bases:
lina.InvalidWhitespaceToken
An invalid named character token was encountered.
-
exception
lina.
InvalidToken
(message, position)[source]¶ Bases:
lina.TemplateException
An invalid token was encountered.
-
exception
lina.
InvalidWhitespaceToken
(message, position)[source]¶ Bases:
lina.TemplateException
Only for backwards compatibility. Will be removed in 2.x.
-
class
lina.
Template
(template, includeHandler=None, *, filename=None)[source]¶ Bases:
object
The main template class.
-
RenderSimple
(**items)[source]¶ Simple rendering function.
This is just a convenience function which creates the context from the passed items and forwards them to
Template.Render()
.
-
-
exception
lina.
TemplateException
(message, position)[source]¶ Bases:
Exception
Base class for all exceptions thrown by Lina.
-
class
lina.
TemplateRepository
(templateDirectory, suffix='')[source]¶ Bases:
lina.IncludeHandler
A file template repository.
This template repository will load files from a specified folder.
-
class
lina.
TextStream
(text, *, filename=None)[source]¶ Bases:
object
A read-only text stream.
The text stream is used for input only and keeps track of the current read pointer position in terms of line/column numbers.
-
class
lina.
Token
(name, start, end, position)[source]¶ Bases:
object
Represents a single token.
Each token may contain an optional list of flags, separated by colons. The grammar implemented here is:
[prefix]?[^:}]+(:[^:})+, for example: {{#Foo}} -> name = Foo, prefix = # {{Bar:width=8}} -> name = Bar, prefix = None, flags = {width:8}
The constructor checks if the formatter matches the token type. A block formatter can be only applied to a block token, and a value formatter only to a value.