本文整理匯總了Python中mako.ast.FunctionDecl方法的典型用法代碼示例。如果您正苦於以下問題:Python ast.FunctionDecl方法的具體用法?Python ast.FunctionDecl怎麽用?Python ast.FunctionDecl使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類mako.ast
的用法示例。
在下文中一共展示了ast.FunctionDecl方法的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: __init__
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def __init__(self, keyword, attributes, **kwargs):
expressions = ['buffered', 'cached'] + [
c for c in attributes if c.startswith('cache_')]
super(DefTag, self).__init__(
keyword,
attributes,
expressions,
('name', 'filter', 'decorator'),
('name',),
**kwargs)
name = attributes['name']
if re.match(r'^[\w_]+$', name):
raise exceptions.CompileException(
"Missing parenthesis in %def",
**self.exception_kwargs)
self.function_decl = ast.FunctionDecl("def " + name + ":pass",
**self.exception_kwargs)
self.name = self.function_decl.funcname
self.decorator = attributes.get('decorator', '')
self.filter_args = ast.ArgumentList(
attributes.get('filter', ''),
**self.exception_kwargs)
示例2: __init__
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def __init__(self, keyword, attributes, **kwargs):
expressions = ['buffered', 'cached'] + [
c for c in attributes if c.startswith('cache_')]
super(DefTag, self).__init__(
keyword,
attributes,
expressions,
('name', 'filter', 'decorator'),
('name',),
**kwargs)
name = attributes['name']
if re.match(r'^[\w_]+$', name):
raise exceptions.CompileException(
"Missing parenthesis in %def",
**self.exception_kwargs)
self.function_decl = ast.FunctionDecl("def " + name + ":pass",
**self.exception_kwargs)
self.name = self.function_decl.funcname
self.decorator = attributes.get('decorator', '')
self.filter_args = ast.ArgumentList(
attributes.get('filter', ''),
**self.exception_kwargs)
示例3: __init__
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def __init__(self, keyword, attributes, **kwargs):
expressions = ["buffered", "cached"] + [
c for c in attributes if c.startswith("cache_")
]
super(DefTag, self).__init__(
keyword,
attributes,
expressions,
("name", "filter", "decorator"),
("name",),
**kwargs
)
name = attributes["name"]
if re.match(r"^[\w_]+$", name):
raise exceptions.CompileException(
"Missing parenthesis in %def", **self.exception_kwargs
)
self.function_decl = ast.FunctionDecl(
"def " + name + ":pass", **self.exception_kwargs
)
self.name = self.function_decl.funcname
self.decorator = attributes.get("decorator", "")
self.filter_args = ast.ArgumentList(
attributes.get("filter", ""), **self.exception_kwargs
)
示例4: test_function_decl
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def test_function_decl(self):
"""test getting the arguments from a function"""
code = "def foo(a, b, c=None, d='hi', e=x, f=y+7):pass"
parsed = ast.FunctionDecl(code, **exception_kwargs)
eq_(parsed.funcname, "foo")
eq_(parsed.argnames, ["a", "b", "c", "d", "e", "f"])
eq_(parsed.kwargnames, [])
示例5: test_function_decl_2
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def test_function_decl_2(self):
"""test getting the arguments from a function"""
code = "def foo(a, b, c=None, *args, **kwargs):pass"
parsed = ast.FunctionDecl(code, **exception_kwargs)
eq_(parsed.funcname, "foo")
eq_(parsed.argnames, ["a", "b", "c", "args"])
eq_(parsed.kwargnames, ["kwargs"])
示例6: test_function_decl_3
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def test_function_decl_3(self):
"""test getting the arguments from a fancy py3k function"""
code = "def foo(a, b, *c, d, e, **f):pass"
parsed = ast.FunctionDecl(code, **exception_kwargs)
eq_(parsed.funcname, "foo")
eq_(parsed.argnames, ["a", "b", "c"])
eq_(parsed.kwargnames, ["d", "e", "f"])
示例7: test_function_decl
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def test_function_decl(self):
"""test getting the arguments from a function"""
code = "def foo(a, b, c=None, d='hi', e=x, f=y+7):pass"
parsed = ast.FunctionDecl(code, **exception_kwargs)
eq_(parsed.funcname, 'foo')
eq_(parsed.argnames,
['a', 'b', 'c', 'd', 'e', 'f'])
eq_(parsed.kwargnames,
[])
示例8: test_function_decl_2
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def test_function_decl_2(self):
"""test getting the arguments from a function"""
code = "def foo(a, b, c=None, *args, **kwargs):pass"
parsed = ast.FunctionDecl(code, **exception_kwargs)
eq_(parsed.funcname, 'foo')
eq_(parsed.argnames,
['a', 'b', 'c', 'args'])
eq_(parsed.kwargnames,
['kwargs'])
示例9: test_function_decl_3
# 需要導入模塊: from mako import ast [as 別名]
# 或者: from mako.ast import FunctionDecl [as 別名]
def test_function_decl_3(self):
"""test getting the arguments from a fancy py3k function"""
code = "def foo(a, b, *c, d, e, **f):pass"
parsed = ast.FunctionDecl(code, **exception_kwargs)
eq_(parsed.funcname, 'foo')
eq_(parsed.argnames,
['a', 'b', 'c'])
eq_(parsed.kwargnames,
['d', 'e', 'f'])