本文整理汇总了Python中mako.util.FastEncodingBuffer方法的典型用法代码示例。如果您正苦于以下问题:Python util.FastEncodingBuffer方法的具体用法?Python util.FastEncodingBuffer怎么用?Python util.FastEncodingBuffer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mako.util
的用法示例。
在下文中一共展示了util.FastEncodingBuffer方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _render_error
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _render_error(template, context, error):
if template.error_handler:
result = template.error_handler(context, error)
if not result:
compat.reraise(*sys.exc_info())
else:
error_template = exceptions.html_error_template()
if context._outputting_as_unicode:
context._buffer_stack[:] = [
util.FastEncodingBuffer(as_unicode=True)
]
else:
context._buffer_stack[:] = [
util.FastEncodingBuffer(
error_template.output_encoding,
error_template.encoding_errors,
)
]
context._set_with_template(error_template)
error_template.render_context(context, error=error)
示例2: _render
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _render(template, callable_, args, data, as_unicode=False):
"""create a Context and return the string
output of the given template and template callable."""
if as_unicode:
buf = util.FastEncodingBuffer(as_unicode=True)
elif template.bytestring_passthrough:
buf = compat.StringIO()
else:
buf = util.FastEncodingBuffer(
as_unicode=as_unicode,
encoding=template.output_encoding,
errors=template.encoding_errors)
context = Context(buf, **data)
context._outputting_as_unicode = as_unicode
context._set_with_template(template)
_render_context(template, callable_, context, *args,
**_kwargs_for_callable(callable_, data))
return context._pop_buffer().getvalue()
示例3: _render_error
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _render_error(template, context, error):
if template.error_handler:
result = template.error_handler(context, error)
if not result:
compat.reraise(*sys.exc_info())
else:
error_template = exceptions.html_error_template()
if context._outputting_as_unicode:
context._buffer_stack[:] = [
util.FastEncodingBuffer(as_unicode=True)]
else:
context._buffer_stack[:] = [util.FastEncodingBuffer(
error_template.output_encoding,
error_template.encoding_errors)]
context._set_with_template(error_template)
error_template.render_context(context, error=error)
示例4: test_dont_accept_relative_outside_of_root
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def test_dont_accept_relative_outside_of_root(self):
"""test the mechanics of an include where
the include goes outside of the path"""
tl = lookup.TemplateLookup(directories=[os.path.join(template_base, "subdir")])
index = tl.get_template("index.html")
ctx = runtime.Context(FastEncodingBuffer())
ctx._with_template=index
assert_raises_message(
exceptions.TemplateLookupException,
"Template uri \"../index.html\" is invalid - it "
"cannot be relative outside of the root path",
runtime._lookup_template, ctx, "../index.html", index.uri
)
assert_raises_message(
exceptions.TemplateLookupException,
"Template uri \"../othersubdir/foo.html\" is invalid - it "
"cannot be relative outside of the root path",
runtime._lookup_template, ctx, "../othersubdir/foo.html", index.uri
)
# this is OK since the .. cancels out
t = runtime._lookup_template(ctx, "foo/../index.html", index.uri)
示例5: _render
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _render(template, callable_, args, data, as_unicode=False):
"""create a Context and return the string
output of the given template and template callable."""
if as_unicode:
buf = util.FastEncodingBuffer(as_unicode=True)
elif template.bytestring_passthrough:
buf = compat.StringIO()
else:
buf = util.FastEncodingBuffer(
as_unicode=as_unicode,
encoding=template.output_encoding,
errors=template.encoding_errors)
context = Context(buf, **data)
context._outputting_as_unicode = as_unicode
context._set_with_template(template)
_render_context(template, callable_, context, *args,
**_kwargs_for_callable(callable_, data))
return context._pop_buffer().getvalue()
示例6: _render_error
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _render_error(template, context, error):
if template.error_handler:
result = template.error_handler(context, error)
if not result:
compat.reraise(*sys.exc_info())
else:
error_template = exceptions.html_error_template()
if context._outputting_as_unicode:
context._buffer_stack[:] = [
util.FastEncodingBuffer(as_unicode=True)]
else:
context._buffer_stack[:] = [util.FastEncodingBuffer(
error_template.output_encoding,
error_template.encoding_errors)]
context._set_with_template(error_template)
error_template.render_context(context, error=error)
示例7: _push_writer
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _push_writer(self):
"""push a capturing buffer onto this Context and return
the new writer function."""
buf = util.FastEncodingBuffer()
self._buffer_stack.append(buf)
return buf.write
示例8: _render
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def _render(template, callable_, args, data, as_unicode=False):
"""create a Context and return the string
output of the given template and template callable."""
if as_unicode:
buf = util.FastEncodingBuffer(as_unicode=True)
elif template.bytestring_passthrough:
buf = compat.StringIO()
else:
buf = util.FastEncodingBuffer(
as_unicode=as_unicode,
encoding=template.output_encoding,
errors=template.encoding_errors,
)
context = Context(buf, **data)
context._outputting_as_unicode = as_unicode
context._set_with_template(template)
_render_context(
template,
callable_,
context,
*args,
**_kwargs_for_callable(callable_, data)
)
return context._pop_buffer().getvalue()
示例9: compile
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def compile(node,
uri,
filename=None,
default_filters=None,
buffer_filters=None,
imports=None,
future_imports=None,
source_encoding=None,
generate_magic_comment=True,
disable_unicode=False,
strict_undefined=False,
enable_loop=True,
reserved_names=frozenset()):
"""Generate module source code given a parsetree node,
uri, and optional source filename"""
# if on Py2K, push the "source_encoding" string to be
# a bytestring itself, as we will be embedding it into
# the generated source and we don't want to coerce the
# result into a unicode object, in "disable_unicode" mode
if not compat.py3k and isinstance(source_encoding, compat.text_type):
source_encoding = source_encoding.encode(source_encoding)
buf = util.FastEncodingBuffer()
printer = PythonPrinter(buf)
_GenerateRenderMethod(printer,
_CompileContext(uri,
filename,
default_filters,
buffer_filters,
imports,
future_imports,
source_encoding,
generate_magic_comment,
disable_unicode,
strict_undefined,
enable_loop,
reserved_names),
node)
return buf.getvalue()
示例10: test_fast_buffer_write
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def test_fast_buffer_write(self):
buf = util.FastEncodingBuffer()
buf.write("string a ")
buf.write("string b")
eq_(buf.getvalue(), "string a string b")
示例11: test_fast_buffer_encoded
# 需要导入模块: from mako import util [as 别名]
# 或者: from mako.util import FastEncodingBuffer [as 别名]
def test_fast_buffer_encoded(self):
s = u("drôl m’a rée « S’il")
buf = util.FastEncodingBuffer(encoding="utf-8")
buf.write(s[0:10])
buf.write(s[10:])
eq_(buf.getvalue(), s.encode("utf-8"))