Changeset d9a0e76 for translator/ResolvExpr/AlternativePrinter.cc
- Timestamp:
- Dec 16, 2014, 9:41:50 PM (10 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
- Children:
- 17cd4eb
- Parents:
- 3848e0e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
translator/ResolvExpr/AlternativePrinter.cc
r3848e0e rd9a0e76 1 /*2 * This file is part of the Cforall project3 *4 * $Id: AlternativePrinter.cc,v 1.5 2005/08/29 20:14:15 rcbilson Exp $5 *6 */7 8 1 #include "AlternativePrinter.h" 9 2 #include "AlternativeFinder.h" … … 15 8 16 9 namespace ResolvExpr { 10 AlternativePrinter::AlternativePrinter( std::ostream &os ) : SymTab::Indexer( false ), os( os ) {} 17 11 18 AlternativePrinter::AlternativePrinter( std::ostream &os ) 19 : SymTab::Indexer( false ), os( os ) 20 { 21 } 22 23 void 24 AlternativePrinter::visit(ExprStmt *exprStmt) 25 { 26 TypeEnvironment env; 27 AlternativeFinder finder( *this, env ); 28 finder.findWithAdjustment( exprStmt->get_expr() ); 29 int count = 1; 30 os << "There are " << finder.get_alternatives().size() << " alternatives" << std::endl; 31 for( AltList::const_iterator i = finder.get_alternatives().begin(); i != finder.get_alternatives().end(); ++i ) { 32 os << "Alternative " << count++ << " ==============" << std::endl; 33 printAll( i->expr->get_results(), os ); 34 // i->print( os ); 35 os << std::endl; 36 } 37 } 38 12 void AlternativePrinter::visit( ExprStmt *exprStmt ) { 13 TypeEnvironment env; 14 AlternativeFinder finder( *this, env ); 15 finder.findWithAdjustment( exprStmt->get_expr() ); 16 int count = 1; 17 os << "There are " << finder.get_alternatives().size() << " alternatives" << std::endl; 18 for ( AltList::const_iterator i = finder.get_alternatives().begin(); i != finder.get_alternatives().end(); ++i ) { 19 os << "Alternative " << count++ << " ==============" << std::endl; 20 printAll( i->expr->get_results(), os ); 21 // i->print( os ); 22 os << std::endl; 23 } // for 24 } // AlternativePrinter::visit 39 25 } // namespace ResolvExpr
Note: See TracChangeset
for help on using the changeset viewer.