Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

pairs.h

Go to the documentation of this file.
00001 #ifndef pairs_h
00002 #define pairs_h
00003 
00004 #include <string>
00005 #include <list>
00006 
00008 class Pairs
00009 {
00010  private:
00011 
00013   typedef struct Pair
00014   {
00015     std::string::size_type first;  
00016     std::string::size_type second; 
00017   };
00018 
00019   typedef std::list<Pair> Pair_list;
00020   typedef std::list<Pair>::iterator Pair_list_it;
00021 
00022   Pair_list pairs;
00023 
00024  public:
00026   Pairs( std::string line , std::string::size_type startpos = 0);
00027   
00029   void add( std::string::size_type first,
00030             std::string::size_type second );
00031 
00032   void clear();  
00033 
00035 
00036   bool is_in_pair( std::string::size_type pos );
00037  
00039   void extract( std::string line, std::string::size_type startpos = 0 );
00040 
00041  private:
00043 
00044   bool is_in_pair( std::string::size_type pos,  
00045                    std::string::size_type pair1,
00046                    std::string::size_type pair2 ) const ;
00047 };
00048 
00049 #endif

Generated on Tue Nov 20 02:19:52 2001 for Leo<HTML> by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001