00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef lestes__lang__cplus__sem___or_ics_hh___included
00029 #define lestes__lang__cplus__sem___or_ics_hh___included
00030
00031
00032
00033
00034
00035 package(lestes);
00036 package(lang);
00037 package(cplus);
00038 package(sem);
00039
00040 typedef enum {
00041 OR_CV_CONST,
00042 OR_CV_VOLATILE,
00043 OR_CV_CONST_VOLATILE,
00044 OR_CV_MEMBER_PTR,
00045 OR_CV_PTR,
00046 OR_CV_BOOL,
00047 OR_CV_VOID,
00048 OR_CV_CLASS,
00049 OR_CV_PSEUDOREFERENCE,
00050 OR_CV_REFERENCE,
00051 OR_CV_SINT,
00052 OR_CV_NONE,
00053 } or_cv_enum;
00054
00055 class ss_expression;
00056 class ss_type;
00057 class or_or_functional;
00058 class or_ics_functional;
00059 class or_ics_functional_for_std_conversion;
00060 class or_ics_functional_for_lval_rval_conversion;
00061 class or_ics_functional_for_user_conversion_by_constructor;
00062 class or_ics_functional_for_user_conversion_by_conversion_function;
00063 class or_ics_functional_for_compound_conversion;
00064
00065
00066 #define MAX(A,B) (A)>(B) ? (A) : (B)
00067
00068 ptr< or_ics_functional > or_find_ics(ptr< or_or_functional > source, ptr< ss_type > target);
00069
00070 end_package(lex);
00071 end_package(cplus);
00072 end_package(lang);
00073 end_package(lestes);
00074
00075 #endif
00076
00077