class Compiler

Latte compiler.

Constants

CONTENT_HTML

Context-aware escaping content types

CONTENT_XHTML

Context-aware escaping content types

CONTENT_XML

Context-aware escaping content types

CONTENT_JS

Context-aware escaping content types

CONTENT_CSS

Context-aware escaping content types

CONTENT_ICAL

Context-aware escaping content types

CONTENT_TEXT

Context-aware escaping content types

internal CONTEXT_HTML_TEXT

internal CONTEXT_HTML_TAG

internal CONTEXT_HTML_ATTRIBUTE

internal CONTEXT_HTML_ATTRIBUTE_JS

internal CONTEXT_HTML_ATTRIBUTE_CSS

internal CONTEXT_HTML_ATTRIBUTE_URL

internal CONTEXT_HTML_ATTRIBUTE_UNQUOTED_URL

internal CONTEXT_HTML_COMMENT

internal CONTEXT_HTML_BOGUS_COMMENT

internal CONTEXT_HTML_CSS

internal CONTEXT_HTML_JS

internal CONTEXT_XML_TEXT

internal CONTEXT_XML_TAG

internal CONTEXT_XML_ATTRIBUTE

internal CONTEXT_XML_COMMENT

internal CONTEXT_XML_BOGUS_COMMENT

Methods

addMacro(string $name, IMacro $macro, int $flags = null)

Adds new macro with IMacro flags.

setFunctions(array $names)

Registers run-time functions.

string
compile(array $tokens, string $className)

Compiles tokens to PHP code.

setContentType(string $type)

No description

MacroNode|null
getMacroNode()

No description

array
getMacros()

No description

array
getFunctions()

No description

int|null
getLine()

Returns current line number.

bool
isInHead()

No description

void
addMethod(string $name, string $body, string $arguments = '')

Adds custom method to template.

array
getMethods()

Returns custom methods.

void
addProperty(string $name, $value)

Adds custom property to template.

array
getProperties()

Returns custom properites.

string
expandTokens(string $s)

No description

openMacro(string $name, string $args = null, string $modifiers = null, bool $isRightmost = false, string $nPrefix = null)

Generates code for {macro ...} to the output.

closeMacro(string $name, string $args = null, string $modifiers = null, bool $isRightmost = false, string $nPrefix = null)

Generates code for {/macro ...} to the output.

void
writeAttrsMacro(string $html)

Generates code for macro to the output.

expandMacro(string $name, string $args, string $modifiers = null, string $nPrefix = null)

Expands macro and returns node & code.

Details

at line 103
Compiler addMacro(string $name, IMacro $macro, int $flags = null)

Adds new macro with IMacro flags.

Parameters

string $name
IMacro $macro
int $flags

Return Value

Compiler

at line 120
Compiler setFunctions(array $names)

Registers run-time functions.

Parameters

array $names

Return Value

Compiler

at line 131
string compile(array $tokens, string $className)

Compiles tokens to PHP code.

Parameters

array $tokens
string $className

Return Value

string

at line 209
Compiler setContentType(string $type)

No description

Parameters

string $type

Return Value

Compiler

at line 217
MacroNode|null getMacroNode()

No description

Return Value

MacroNode|null

at line 223
array getMacros()

No description

Return Value

array

at line 229
array getFunctions()

No description

Return Value

array

at line 238
int|null getLine()

Returns current line number.

Return Value

int|null

at line 246
bool isInHead()

No description

Return Value

bool

at line 256
void addMethod(string $name, string $body, string $arguments = '')

internal  
 

Adds custom method to template.

Parameters

string $name
string $body
string $arguments

Return Value

void

at line 266
array getMethods()

internal  
 

Returns custom methods.

Return Value

array

at line 276
void addProperty(string $name, $value)

internal  
 

Adds custom property to template.

Parameters

string $name
$value

Return Value

void

at line 286
array getProperties()

internal  
 

Returns custom properites.

Return Value

array

at line 293
string expandTokens(string $s)

internal  
 

No description

Parameters

string $s

Return Value

string

at line 518
MacroNode openMacro(string $name, string $args = null, string $modifiers = null, bool $isRightmost = false, string $nPrefix = null)

internal  
 

Generates code for {macro ...} to the output.

Parameters

string $name
string $args
string $modifiers
bool $isRightmost
string $nPrefix

Return Value

MacroNode

at line 545
MacroNode closeMacro(string $name, string $args = null, string $modifiers = null, bool $isRightmost = false, string $nPrefix = null)

internal  
 

Generates code for {/macro ...} to the output.

Parameters

string $name
string $args
string $modifiers
bool $isRightmost
string $nPrefix

Return Value

MacroNode

at line 623
void writeAttrsMacro(string $html)

internal  
 

Generates code for macro to the output.

Parameters

string $html

Return Value

void

at line 729
MacroNode expandMacro(string $name, string $args, string $modifiers = null, string $nPrefix = null)

internal  
 

Expands macro and returns node & code.

Parameters

string $name
string $args
string $modifiers
string $nPrefix

Return Value

MacroNode

Traits

Better OOP experience.