00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef MKSTRING_H
00020 #define MKSTRING_H
00021
00022
00023
00024
00025
00026 enum BaseStringEnum
00027 {
00028 Type_Undefined,
00029
00030
00031 Strategy_NONE,
00032
00033 Type_Size
00034 };
00035
00036 #define TYPE_Undefined BaseString[Type_Undefined]
00037 #define STRATEGY_NONE BaseString[Strategy_NONE]
00038
00039 extern int BaseString [Type_Size];
00040
00041
00042
00043
00044
00045 struct bintree
00046 {
00047 char** array;
00048 int size;
00049
00050 bintree ( );
00051
00052 int insert ( const char* str );
00053 int insert ( const char* str, int index );
00054 void dump ( int i = 0 ) const;
00055 };
00056
00057 struct binforest
00058 {
00059 char one_char_static[2*256];
00060 bintree *forest[256];
00061
00062 binforest ( );
00063
00064 int insert ( const char* str );
00065 const char* get ( const int& index ) const;
00066 void dump ( ) const;
00067 };
00068
00069 extern int mkstring ( const char* str );
00070 extern void mkstringInit ( );
00071 extern void dumpstring ( );
00072 extern const char* getstring ( const int& i );
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083 #endif
00084