Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/DeclReplacer.cpp

    r490fb92e re9b44489  
    3838                        const ast::TypeInstType * previsit( const ast::TypeInstType * );
    3939                };
    40 
    41                 struct VarExprReplacer {
    42                 private:
    43                         const ExprMap & exprMap;
    44                        
    45                 public:
    46                         VarExprReplacer(const ExprMap & exprMap): exprMap (exprMap) {}
    47 
    48                         const Expr * postvisit (const VariableExpr *);
    49                 };
    5040        }
    5141
     
    6454                DeclMap declMap;
    6555                return replace( node, declMap, typeMap, debug );
    66         }
    67 
    68         const ast::Node * replace( const ast::Node * node, const ExprMap & exprMap) {
    69                 Pass<VarExprReplacer> replacer = {exprMap};
    70                 return node->accept( replacer );
    7156        }
    7257
     
    10388                        return ninst;
    10489                }
    105 
    106                 const Expr * VarExprReplacer::postvisit( const VariableExpr * expr ) {
    107                         if (!exprMap.count(expr->var)) return expr;
    108 
    109                         return exprMap.at(expr->var);
    110                 }
    111 
    11290        }
    11391}
Note: See TracChangeset for help on using the changeset viewer.