00001 /* promotion.h 00002 */ 00003 #ifndef _MOVE_ORDER_PROMOTION_H 00004 #define _MOVE_ORDER_PROMOTION_H 00005 #include "osl/move.h" 00006 00007 namespace osl 00008 { 00009 namespace move_order 00010 { 00014 struct Promotion 00015 { 00016 bool operator()(Move l, Move r) const 00017 { 00018 const int promotion_l = l.promoteMask(); 00019 const int promotion_r = r.promoteMask(); 00020 00021 return promotion_l > promotion_r; 00022 } 00023 }; 00024 } // namespace move_order 00025 } // namespace osl 00026 00027 #endif /* _MOVE_ORDER_PROMOTION_H */ 00028 // ;;; Local Variables: 00029 // ;;; mode:c++ 00030 // ;;; c-basic-offset:2 00031 // ;;; End: