trailofbits/manticore

Refactor/unify repetitive pattern

Open

#1,059 建立於 2018年8月16日

在 GitHub 查看
 (0 留言) (0 反應) (0 負責人)Python (3,469 star) (481 fork)batch import
ethereumhelp wantedresearch

描述

This pattern comes up pretty regularly (in Solver.get_all_values, Solver.get_value, ConstraintSet.migrate), should we make a Expression.clone() ?

                if isinstance(foreign_var, Bool):
                    new_var = self.new_bool(name=migrated_name)
                elif isinstance(foreign_var, BitVec):
                    new_var = self.new_bitvec(foreign_var.size, name=migrated_name)
                elif isinstance(foreign_var, Array):
                    # Note that we are discarding the ArrayProxy encapsulation
                    new_var = self.new_array(index_max=foreign_var.index_max, index_bits=foreign_var.index_bits, value_bits=foreign_var.value_bits, name=migrated_name).array

貢獻者指南