Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
if parent is not None and parent.strip_text and parent[-1] is self.element:
tail = tail.rstrip('\n ')
parent = self.element.getparent()
if parent is not None and not parent.node._interpolation_enabled:
return (tail,)
parts = self.element.translator.split(tail)
if self.element.tag == '{http://www.w3.org/1999/xhtml}cdata':
return parts
if not self._interpolation_escape:
return parts
return tuple(
isinstance(part, types.expression) and types.escape(part) or \
self.element.meta_structure is True and part or \
utils.htmlescape(part) for part in parts)
return ()
if parent is not None and parent.strip_text and parent[-1] is self.element:
tail = tail.rstrip('\n ')
parent = self.element.getparent()
if parent is not None and not parent.node._interpolation_enabled:
return (tail,)
parts = self.element.translator.split(tail)
if self.element.tag == '{http://www.w3.org/1999/xhtml}cdata':
return parts
if not self._interpolation_escape:
return parts
return tuple(
isinstance(part, types.expression) and types.escape(part) or \
self.element.meta_structure is True and part or \
utils.htmlescape(part) for part in parts)
return ()
parent = self.element.getparent()
if parent is not None and self.element.strip_text and parent[0] is self.element:
text = text.lstrip('\n ')
if not self._interpolation_enabled:
return (text,)
parts = self.element.translator.split(text)
if self.element.tag == '{http://www.w3.org/1999/xhtml}cdata':
return parts
if not self._interpolation_escape:
return parts
return tuple(
isinstance(part, types.expression) and types.escape(part) or \
self.element.meta_structure is True and part or \
utils.htmlescape(part) for part in parts)
return ()
parent = self.element.getparent()
if parent is not None and self.element.strip_text and parent[0] is self.element:
text = text.lstrip('\n ')
if not self._interpolation_enabled:
return (text,)
parts = self.element.translator.split(text)
if self.element.tag == '{http://www.w3.org/1999/xhtml}cdata':
return parts
if not self._interpolation_escape:
return parts
return tuple(
isinstance(part, types.expression) and types.escape(part) or \
self.element.meta_structure is True and part or \
utils.htmlescape(part) for part in parts)
return ()
>>> output("structure context/title")
value('context/title')
>>> output(" structure context/title")
value('context/title')
"""
string = string.lstrip(' ')
if string.startswith('structure '):
return self.tales(string[len('structure'):])
expression = self.tales(string)
if isinstance(expression, types.parts):
return types.escape(expression)
return types.escape((expression,))
def __init__(self, value, defer=False):
self.assign = Assign(value)
self.structure = not isinstance(value, types.escape)
self.defer = defer
>>> output("context/title")
escape(value('context/title'),)
>>> output("structure context/title")
value('context/title')
"""
if string.startswith('structure '):
return self.expression(string[len('structure')+1:])
expression = self.expression(string)
if isinstance(expression, types.parts):
return types.escape(expression)
return types.escape((expression,))
>>> output = MockExpressionTranslator().output
>>> output("context/title")
escape(value('context/title'),)
>>> output("structure context/title")
value('context/title')
"""
if string.startswith('structure '):
return self.expression(string[len('structure')+1:])
expression = self.expression(string)
if isinstance(expression, types.parts):
return types.escape(expression)
return types.escape((expression,))
>>> output(" structure context/title")
value('context/title')
"""
string = string.lstrip(' ')
if string.startswith('structure '):
return self.tales(string[len('structure'):])
expression = self.tales(string)
if isinstance(expression, types.parts):
return types.escape(expression)
return types.escape((expression,))