CCAFFEINE  0.8.8
StringTokenizer.h
00001 #ifndef StringTokenizer_h_seen
00002 #define StringTokenizer_h_seen
00003 
00009 // Rather safer than strtok ala java.
00010 //
00011 
00012 //#include "jc++/jc++.h"
00013 //#include "jc++/lang/Object.h"
00014 //#include "jc++/util/StringEnumeration.h"
00015 //#include "jc++/util/JString.h"
00016 
00017 namespace jcpp {
00018 
00019 
00021 class StringTokenizer : public virtual StringEnumeration {
00022 
00023 private:
00024 
00025         char *input;
00026         char *delims;
00027         boolean retDelim;
00028         int position;
00029         int input_length;
00030 
00032         CFREE char *nextTokenInternal() ;
00033 
00034 public:
00035         CDELETE StringTokenizer(char * str) ;
00036 
00037         CDELETE StringTokenizer(char *str, char *delim) ;
00038 
00039         CDELETE StringTokenizer(char *str, char *delim, boolean ret) ;
00040 
00041         virtual ~StringTokenizer() ;
00042 
00043         int countTokens() ;
00044 
00045         virtual boolean hasMoreElements() ;
00046 
00047         boolean hasMoreTokens() ;
00048 
00050         CFREE virtual char *nextElement() ;
00051 
00053         CFREE char *nextToken(char *delim) ;
00054 
00056         CFREE char *nextToken() ;
00057 
00058 };
00059 
00060 }  ENDSEMI//jcpp
00061 #endif // StringTokenizer_h_seen