fava.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:insights-core 作者: RedHatInsights 项目源码 文件源码
def make_jinja_call(render_function_name, used_variables, string_value, ctx):
    used_defined_variables = ctx & used_variables
    undefined_variables = used_variables - ctx
    if len(undefined_variables) > 0:
        translation_error("Undefined variables: " + ", ".join(undefined_variables), string_value)
    used_parsers = used_defined_variables & set(FavaCode.get_known_parsers().keys())
    used_user_variables = used_defined_variables - used_parsers

    keyword_arguments = [keyword(arg=key, value=Name(id=key, ctx=Load()))
                           for key in used_user_variables] + \
                        [keyword(arg=key,
                                 value=_build_subscript(Name(id='shared', ctx=Load()),
                                                        Name(id=key, ctx=Load())))
                         for key in used_parsers]

    return FavaCode(
        Call(func=Name(id=render_function_name, ctx=Load()),
             args=[Str(s=string_value)],
             keywords=keyword_arguments,
             starargs=None, kwargs=None),
        [],
        parsers=used_parsers)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号