liquid.exts.standard
liquid.exts.standard
Provides an extension to implment features for standard liquid
LiquidStandardExtension
— This extension implement features for standard liqiud</>
liquid.exts.standard.
LiquidStandardExtension
(
environment
)
This extension implement features for standard liqiud
These features (that jinja does support) including
1. Allow '.size' to get length of an array (by replacing it
with '.len()')
2. Allow 'contains' to work as an operator by turning it into a test
3. Turn 'forloop' to 'loop'
4. Allow (1..5)
, which will be turned to range(1, 6)
__init_subclass__
(
)
— Initalize the tags and raw_tags using tag manager</>attr
(
name
,lineno
)
(ExtensionAttribute) — Return an attribute node for the current extension. This is usefulto pass constants on extensions to generated template code. </>bind
(
environment
)
(Extension) — Create a copy of this extension bound to another environment.</>call_method
(
name
,args
,kwargs
,dyn_args
,dyn_kwargs
,lineno
)
(Call) — Call a method of the extension. This is a shortcut for:meth:attr
+ :class:jinja2.nodes.Call
. </>filter_stream
(
stream
)
— Supports for liquid features</>parse
(
parser
)
(Node) — Let tag manager to parse the tags that are being listened to</>preprocess
(
source
,name
,filename
)
(str) — Try to keep the tag body raw by encode the variable/comment/blockstart strings ('{{', '{#', '{%') so that the body won't be tokenized by jinjia. </>
bind
(
environment
)
→ Extension
Create a copy of this extension bound to another environment.
attr
(
name
, lineno=None
)
→ ExtensionAttribute
Return an attribute node for the current extension. This is usefulto pass constants on extensions to generated template code.
::
self.attr('_my_attribute', lineno=lineno)
call_method
(
name
, args=None
, kwargs=None
, dyn_args=None
, dyn_kwargs=None
, lineno=None
)
→ Call
Call a method of the extension. This is a shortcut for:meth:attr
+ :class:jinja2.nodes.Call
.
__init_subclass__
(
)
Initalize the tags and raw_tags using tag manager
preprocess
(
source
, name
, filename
)
→ str
Try to keep the tag body raw by encode the variable/comment/blockstart strings ('{{', '{#', '{%') so that the body won't be tokenized by jinjia.
filter_stream
(
stream
)
Supports for liquid features