+ if (rhs.position_ != position_)
+ return false;
+
+ if (direction_ == ALL || rhs.direction_ == ALL)
+ return true;
+
+ return (rhs.direction_ == direction_);
+}
+
+bool Stop::operator< (const Stop& rhs) const
+{
+ /* If we do not use the direction to help differentiate, then it is
+ * possible that an object can be neither less, greater, or equal */
+ return (position_ < rhs.position_);