• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python passmanager.Transformation类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中pythran.passmanager.Transformation的典型用法代码示例。如果您正苦于以下问题:Python Transformation类的具体用法?Python Transformation怎么用?Python Transformation使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了Transformation类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: generic_visit

 def generic_visit(self, node):
     if node in self.constant_expressions:
         try:
             fake_node = ast.Expression(node.value if isinstance(node, ast.Index) else node)
             code = compile(fake_node, "<constant folding>", "eval")
             value = eval(code, self.env)
             new_node = self.to_ast(value)
             if isinstance(node, ast.Index) and not isinstance(new_node, ast.Index):
                 new_node = ast.Index(new_node)
             return new_node
         except ConstantFolding.ConversionError as e:
             print ast.dump(node)
             print "error in constant folding: ", e
             raise
         except ConstantFolding.ToNotEval:
             return Transformation.generic_visit(self, node)
         except AttributeError as e:
             # FIXME union_ function is not handle by constant folding
             if "union_" in e.args[0]:
                 return Transformation.generic_visit(self, node)
             raise
         except NameError as e:
             # FIXME dispatched function are not processed by constant
             # folding
             if "__dispatch__" in e.args[0]:
                 return Transformation.generic_visit(self, node)
             raise
     else:
         return Transformation.generic_visit(self, node)
开发者ID:baoboa,项目名称:pythran,代码行数:29,代码来源:constant_folding.py


示例2: __init__

 def __init__(self, pm, name, ctx, lambda_functions, imports):
     Transformation.__init__(self)
     self.passmanager = pm
     self.ctx = ctx
     self.prefix = name
     self.lambda_functions = lambda_functions
     self.imports = imports
     self.global_declarations = pm.gather(GlobalDeclarations, ctx.module)
开发者ID:baoboa,项目名称:pythran,代码行数:8,代码来源:remove_lambdas.py


示例3: generic_visit

 def generic_visit(self, node):
     if node in self.constant_expressions:
         try:
             fake_node = ast.Expression(
                 node.value if isinstance(node, ast.Index) else node)
             code = compile(fake_node, '<constant folding>', 'eval')
             value = eval(code, self.env)
             new_node = self.to_ast(value)
             if (isinstance(node, ast.Index)
                     and not isinstance(new_node, ast.Index)):
                 new_node = ast.Index(new_node)
             return new_node
         except Exception:  # as e:
             #print ast.dump(node)
             #print 'error in constant folding: ', e
             return Transformation.generic_visit(self, node)
     else:
         return Transformation.generic_visit(self, node)
开发者ID:biznixcn,项目名称:pythran,代码行数:18,代码来源:constant_folding.py


示例4: generic_visit

 def generic_visit(self, node):
     if node in self.constant_expressions:
         try:
             fake_node = ast.Expression(
                 node.value if isinstance(node, ast.Index) else node)
             code = compile(fake_node, '<constant folding>', 'eval')
             value = eval(code, self.env)
             new_node = to_ast(value)
             if(isinstance(node, ast.Index) and
                not isinstance(new_node, ast.Index)):
                 new_node = ast.Index(new_node)
             try:
                 if not ASTMatcher(node).search(new_node):
                     self.update = True
             except DamnTooLongPattern as e:
                 print "W: ", e, " Assume no update happened."
             return new_node
         except ConversionError as e:
             print ast.dump(node)
             print 'error in constant folding: ', e
             raise
         except ToNotEval:
             return Transformation.generic_visit(self, node)
         except AttributeError as e:
             # FIXME union_ function is not handle by constant folding
             if "union_" in e.args[0]:
                 return Transformation.generic_visit(self, node)
             elif "pythran" in e.args[0]:
                 # FIXME: Can be fix giving a Python implementation for
                 # these functions.
                 return Transformation.generic_visit(self, node)
             raise
         except NameError as e:
             # FIXME dispatched function are not processed by constant
             # folding
             if "__dispatch__" in e.args[0]:
                 return Transformation.generic_visit(self, node)
             raise
     else:
         return Transformation.generic_visit(self, node)
开发者ID:Pikalchemist,项目名称:pythran,代码行数:40,代码来源:constant_folding.py


示例5: __init__

 def __init__(self):
     Transformation.__init__(self, NormalizeTuples,
                             OptimizableComprehension)
开发者ID:Pikalchemist,项目名称:pythran,代码行数:3,代码来源:list_comp_to_map.py


示例6: __init__

 def __init__(self):
     self.count = 0
     Transformation.__init__(self)
开发者ID:xmar,项目名称:pythran,代码行数:3,代码来源:remove_comprehension.py


示例7: __init__

 def __init__(self):
     Transformation.__init__(self, RangeValues)
开发者ID:serge-sans-paille,项目名称:pythran,代码行数:2,代码来源:range_based_simplify.py


示例8: __init__

 def __init__(self):
     Transformation.__init__(self, Globals)
     self.imports = {'__builtin__': '__builtin__'}
     self.to_import = set()
开发者ID:serge-sans-paille,项目名称:pythran,代码行数:4,代码来源:normalize_method_calls.py


示例9: __init__

 def __init__(self):
     Transformation.__init__(self, ConstantExpressions)
开发者ID:serge-sans-paille,项目名称:pythran,代码行数:2,代码来源:constant_folding.py


示例10: __init__

 def __init__(self):
     Transformation.__init__(self, PotentialIterator, Aliases)
开发者ID:pythran-travis,项目名称:pythran,代码行数:2,代码来源:iter_transformation.py


示例11: __init__

 def __init__(self):
     Transformation.__init__(self, NormalizeTuples,
                             PotentialIterator)
开发者ID:xmar,项目名称:pythran,代码行数:3,代码来源:list_comp_to_genexp.py


示例12: __init__

 def __init__(self):
     """ Gather required information. """
     Transformation.__init__(self, PotentialIterator, Aliases)
开发者ID:LuisBL,项目名称:pythran,代码行数:3,代码来源:iter_transformation.py


示例13: __init__

 def __init__(self):
     Transformation.__init__(self, TypeDependencies,
                             OrderedGlobalDeclarations)
开发者ID:pythran-travis,项目名称:pythran,代码行数:3,代码来源:typing.py


示例14: __init__

 def __init__(self):
     Transformation.__init__(self, Identifiers)
开发者ID:xmar,项目名称:pythran,代码行数:2,代码来源:unshadow_parameters.py


示例15: __init__

 def __init__(self):
     Transformation.__init__(self, UseDefChains, Ancestors, Aliases,
                             RangeValues, Identifiers)
     self.loops_mod = dict()
开发者ID:serge-sans-paille,项目名称:pythran,代码行数:4,代码来源:modindex.py


示例16: __init__

 def __init__(self):
     """ Basic initialiser. """
     Transformation.__init__(self)
     self.imports = set()
     self.symbols = dict()
开发者ID:pythran-travis,项目名称:pythran,代码行数:5,代码来源:expand_imports.py


示例17: __init__

 def __init__(self, pm, ctx, global_declarations):
     Transformation.__init__(self)
     self.ctx = ctx
     self.passmanager = pm
     self.global_declarations = global_declarations
开发者ID:LuisBL,项目名称:pythran,代码行数:5,代码来源:remove_nested_functions.py


示例18: __init__

 def __init__(self):
     Transformation.__init__(self, Locals, Globals)
开发者ID:Pikalchemist,项目名称:pythran,代码行数:2,代码来源:expand_builtins.py


示例19: __init__

 def __init__(self):
     Transformation.__init__(self)
     # Remap self.visit_XXXX() to self.attach_data() generic method
     for s in GatherOMPData.statements:
         setattr(self, "visit_" + s, self.attach_data)
     self.current = list()
开发者ID:xmar,项目名称:pythran,代码行数:6,代码来源:openmp.py


示例20: __init__

 def __init__(self):
     Transformation.__init__(self, OptimizableComprehension)
开发者ID:serge-sans-paille,项目名称:pythran,代码行数:2,代码来源:comprehension_patterns.py



注:本文中的pythran.passmanager.Transformation类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python util.format_price_with_symbol函数代码示例发布时间:2022-05-27
下一篇:
Python metadata.visit函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap