This is compile_to_c18.c in view mode; [Download] [Up]
/* ANSI C code generated by SmallEiffel. */ /* -- SmallEiffel -- Release (- 0.91) -- FRANCE -- Copyright (C), 1994 - Dominique COLNET and Suzanne COLLIN -- University Henri Poincare' - Nancy 1 - email colnet@loria.fr -- CRIN (Centre de Recherche en Informatique de Nancy) -- FRANCE */ #include "compile_to_c.h" int ofBC113used_as_reference=0; /*TYPE_INTEGER*/void rT113used_as_reference(/*C*/void){ if (ofBC113used_as_reference==0){ ofBC113used_as_reference=1; rT113load_ref((T0 *)ms50_27); }} /*TYPE_INTEGER*/T0* rT113generic_list(T113 *C){ T0* R=NULL; rT48add_type((T0 *)C,(T0 *)ms1_62); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ return R; } /*TYPE_INTEGER*/T0* rT113look_up_for(T113 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT113base_class(C),a1,a2); return R; } /*TYPE_INTEGER*/T0* rT113run_class(T113 *C){ T0* R=NULL; R=rT55run_class(rT113run_type(C)); return R; } /*TYPE_INTEGER*/void rT113mapping_c_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms3_113); }/*TYPE_INTEGER*/T0* rT113smallest_ancestor(T113 *C,T0* a1){ T0* R=NULL; T0* _rto=NULL; _rto=XrT62run_type(a1); /*IF*/if (XrT62is_integer(_rto)) { R=(T0 *)C; } else if (XrT62is_real(_rto)) { R=a1; } else if (XrT62is_double(_rto)) { R=a1; } else { R=rT118smallest_ancestor((T118*)rT113type_integer_ref(),_rto); } /*FI*/return R; } /*TYPE_INTEGER*/void rT113to_reference(T113 *C){ rT44to_reference((T44*)oRBC27cpp,(T0 *)C,rT113type_integer_ref()); }/*TYPE_INTEGER*/int rT113is_a(T113 *C,T0* a1){ int R=0; /*IF*/if (((XrT62is_integer(a1))||(XrT62is_double(a1)))||(XrT62is_real(a1))) { R=1; } else { R=rT53is_subclass_of((T53*)rT113base_class(C),XrT62base_class(a1)); /*IF*/if (R) { rT113used_as_reference(); } /*FI*/} /*FI*//*IF*/if (!(R)) { rT48add_type((T0 *)C,(T0 *)ms105_27); rT48add_type(a1,(T0 *)ms102_27); } /*FI*/return R; } /*TYPE_INTEGER*/void rT113make(T113 *C,T0* a1){ {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms49_27,a1); C->_base_class_name=(T0 *)n;} }/*TYPE_INTEGER*/void rT113to_expanded(T113 *C){ rT44to_expanded((T44*)oRBC27cpp,rT113type_integer_ref(),(T0 *)C); }/*TYPE_INTEGER*/void rT113c_type_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms2_113); }int ofBC27type_integer_ref=0; T0*oRBC27type_integer_ref; /*TYPE_INTEGER*/T0* rT113type_integer_ref(/*C*/void){ if (ofBC27type_integer_ref==0){ T0* R=NULL; T0* _integer_ref=NULL; ofBC27type_integer_ref=1; {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms50_27,NULL); _integer_ref=(T0 *)n;} {T118 *n=((T118*)se_new(118)); /*[IRF3:make*//*AW*/(n)->_base_class_name=(_integer_ref);/*]*/ R=(T0 *)n;} oRBC27type_integer_ref=R;} return oRBC27type_integer_ref;} /*TYPE_INTEGER*/T0* rT113run_type(T113 *C){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_INTEGER*/T0* rT113to_runnable(T113 *C,T0* a1){ T0* R=NULL; R=(T0 *)C; rT113check_type(C); return R; } /*TYPE_INTEGER*/void rT113error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*TYPE_INTEGER*/T0* rT113start_position(T113 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_INTEGER*/T0* rT113base_class(T113 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_INTEGER*/int rT113is_a_in(T113 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms49_27/*)*/,XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT113to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } int ofBC113check_type=0; /*TYPE_INTEGER*/void rT113check_type(T113 *C){ if (ofBC113check_type==0){ T0* _rc=NULL; T0* _bc=NULL; ofBC113check_type=1; _bc=rT113base_class(C); /*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _rc=rT113run_class(C); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (!(((T53*)_bc)->_is_expanded)) { rT113error(rT113start_position(C),(T0 *)ms4_113); } /*FI*/} /*FI*/}} /*TYPE_INTEGER*/int rT113has_creation(T113 *C,T0* a1){ int R=0; rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position); rT113error(rT113start_position(C),(T0 *)ms1_110); return R; } /*TYPE_INTEGER*/void rT113load_ref(/*C*/T0* a1){ T0* _rf=NULL; T0* _rc=NULL; T0* _cn=NULL; {T51 *n=((T51*)se_new(51)); rT51make(n,a1,NULL); _cn=(T0 *)n;} _rc=rT53run_class((T53*)rT51base_class((T51*)_cn)); rT269set_at_run_time((T269*)_rc); _rf=rT269get_feature_with((T269*)_rc,(T0 *)ms2_110); }/*TYPE_NONE*/void rT114fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*TYPE_NONE*/T0* rT114run_type(T114 *C){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_NONE*/T0* rT114to_runnable(T114 *C,T0* a1){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_NONE*/void rT114error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*TYPE_NONE*/void rT114cast_to_ref(T114 *C){ XrT62cast_to_ref(rT114run_type(C)); }/*TYPE_NONE*/int rT114id(/*C*/void){ int R=0; rT114fatal_error((T0 *)ms3_114); return R; } /*TYPE_NONE*/T0* rT114start_position(T114 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_NONE*/T0* rT114generic_list(T114 *C){ T0* R=NULL; rT48add_type((T0 *)C,(T0 *)ms1_62); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ return R; } /*TYPE_NONE*/T0* rT114look_up_for(T114 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT114base_class(C),a1,a2); return R; } /*TYPE_NONE*/T0* rT114run_class(T114 *C){ T0* R=NULL; R=rT55run_class(rT114run_type(C)); return R; } /*TYPE_NONE*/void rT114mapping_c_in(/*C*/T0* a1){ rT7extend((T7*)a1,'T'); rT2append_in(rT114id(),a1); }/*TYPE_NONE*/T0* rT114smallest_ancestor(/*C*/T0* a1){ T0* R=NULL; R=a1; return R; } /*TYPE_NONE*/T0* rT114base_class(T114 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_NONE*/int rT114is_a_in(T114 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms52_27/*)*/,XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT114to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } /*TYPE_NONE*/int rT114displacement(T114 *C){ int R=0; rT48add_position(rT114start_position(C)); rT114fatal_error((T0 *)ms1_114); return R; } /*TYPE_NONE*/int rT114is_a(/*C*/T0* a1){ int R=0; R=1; return R; } /*TYPE_NONE*/int rT114has_creation(T114 *C,T0* a1){ int R=0; rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position); rT114error(rT114start_position(C),(T0 *)ms2_114); return R; } /*TYPE_NONE*/void rT114make(T114 *C,T0* a1){ {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms52_27,a1); C->_base_class_name=(T0 *)n;} }/*TYPE_NONE*/void rT114c_type_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms3_62); }int ofBC115used_as_reference=0; /*TYPE_POINTER*/void rT115used_as_reference(/*C*/void){ if (ofBC115used_as_reference==0){ ofBC115used_as_reference=1; rT115load_ref((T0 *)ms54_27); }} /*TYPE_POINTER*/T0* rT115generic_list(T115 *C){ T0* R=NULL; rT48add_type((T0 *)C,(T0 *)ms1_62); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ return R; } /*TYPE_POINTER*/T0* rT115look_up_for(T115 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT115base_class(C),a1,a2); return R; } /*TYPE_POINTER*/T0* rT115run_class(T115 *C){ T0* R=NULL; R=rT55run_class(rT115run_type(C)); return R; } /*TYPE_POINTER*/void rT115mapping_c_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms5_115); }/*TYPE_POINTER*/T0* rT115smallest_ancestor(T115 *C,T0* a1){ T0* R=NULL; T0* _rto=NULL; _rto=XrT62run_type(a1); /*IF*/if (XrT62is_pointer(_rto)) { R=(T0 *)C; } else { R=rT118smallest_ancestor((T118*)rT115type_pointer_ref(),_rto); } /*FI*/return R; } /*TYPE_POINTER*/void rT115to_reference(T115 *C){ rT44to_reference((T44*)oRBC27cpp,(T0 *)C,rT115type_pointer_ref()); }/*TYPE_POINTER*/int rT115displacement(/*C*/void){ int R=0; void * _p=0; R=((0),sizeof(T8)); return R; } /*TYPE_POINTER*/int rT115is_a(T115 *C,T0* a1){ int R=0; /*IF*/if (XrT62is_pointer(a1)) { R=1; } else { R=rT53is_subclass_of((T53*)rT115base_class(C),XrT62base_class(a1)); /*IF*/if (R) { rT115used_as_reference(); } /*FI*/} /*FI*//*IF*/if (!(R)) { rT48add_type((T0 *)C,(T0 *)ms1_115); rT48add_type(a1,(T0 *)ms102_27); } /*FI*/return R; } /*TYPE_POINTER*/void rT115make(T115 *C,T0* a1){ {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms53_27,a1); C->_base_class_name=(T0 *)n;} }/*TYPE_POINTER*/void rT115to_expanded(T115 *C){ rT44to_expanded((T44*)oRBC27cpp,rT115type_pointer_ref(),(T0 *)C); }/*TYPE_POINTER*/void rT115c_type_in(T115 *C,T0* a1){ rT7append((T7*)a1,(C)->_c_type); }int ofBC27type_pointer_ref=0; T0*oRBC27type_pointer_ref; /*TYPE_POINTER*/T0* rT115type_pointer_ref(/*C*/void){ if (ofBC27type_pointer_ref==0){ T0* R=NULL; T0* _pointer_ref=NULL; ofBC27type_pointer_ref=1; {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms54_27,NULL); _pointer_ref=(T0 *)n;} {T118 *n=((T118*)se_new(118)); /*[IRF3:make*//*AW*/(n)->_base_class_name=(_pointer_ref);/*]*/ R=(T0 *)n;} oRBC27type_pointer_ref=R;} return oRBC27type_pointer_ref;} /*TYPE_POINTER*/T0* rT115run_type(T115 *C){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_POINTER*/T0* rT115to_runnable(T115 *C,T0* a1){ T0* R=NULL; T0* _bcw=NULL; rT115check_type(C); /*IF*/if (!((C)->_c_type)) { R=(T0 *)C; _bcw=((T51*)((T49*)rT115start_position(C))->_base_class_name)->_to_string; /*IF*/if (((((T0 *)_bcw)==((T0 *)(T0 *)ms37_27))||(((T0 *)_bcw)==((T0 *)(T0 *)ms47_27)))&&(XrT62is_generic(a1))) { {T7 *n=((T7*)se_new(7)); rT7make(n,8); C->_c_type=(T0 *)n;} XrT62c_type_in(rT108item((T108*)XrT62generic_list(XrT62run_type(a1)),1),(C)->_c_type); rT7extend((T7*)(C)->_c_type,'\52'); } else if (((T0 *)_bcw)==((T0 *)(T0 *)ms57_27)) { C->_c_type=(T0 *)ms2_115; } else { C->_c_type=(T0 *)ms3_115; } /*FI*/} else { {T115 *n=((T115*)se_new(115)); rT115make(n,rT115start_position(C)); R=(T0 *)n;} R=rT115to_runnable((T115*)R,a1); } /*FI*/return R; } /*TYPE_POINTER*/void rT115error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*TYPE_POINTER*/T0* rT115start_position(T115 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_POINTER*/T0* rT115base_class(T115 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_POINTER*/int rT115is_a_in(T115 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms53_27/*)*/,XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT115to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } int ofBC115check_type=0; /*TYPE_POINTER*/void rT115check_type(T115 *C){ if (ofBC115check_type==0){ T0* _rc=NULL; T0* _bc=NULL; ofBC115check_type=1; _bc=rT115base_class(C); /*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _rc=rT115run_class(C); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (!(((T53*)_bc)->_is_expanded)) { rT115error(rT115start_position(C),(T0 *)ms7_115); } /*FI*/} /*FI*/}} /*TYPE_POINTER*/int rT115has_creation(T115 *C,T0* a1){ int R=0; rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position); rT115error(rT115start_position(C),(T0 *)ms1_110); return R; } /*TYPE_POINTER*/void rT115load_ref(/*C*/T0* a1){ T0* _rf=NULL; T0* _rc=NULL; T0* _cn=NULL; {T51 *n=((T51*)se_new(51)); rT51make(n,a1,NULL); _cn=(T0 *)n;} _rc=rT53run_class((T53*)rT51base_class((T51*)_cn)); rT269set_at_run_time((T269*)_rc); _rf=rT269get_feature_with((T269*)_rc,(T0 *)ms2_110); }int ofBC116used_as_reference=0; /*TYPE_REAL*/void rT116used_as_reference(/*C*/void){ if (ofBC116used_as_reference==0){ ofBC116used_as_reference=1; rT116load_ref((T0 *)ms56_27); }} /*TYPE_REAL*/T0* rT116generic_list(T116 *C){ T0* R=NULL; rT48add_type((T0 *)C,(T0 *)ms1_62); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ return R; } /*TYPE_REAL*/T0* rT116look_up_for(T116 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT116base_class(C),a1,a2); return R; } /*TYPE_REAL*/T0* rT116run_class(T116 *C){ T0* R=NULL; R=rT55run_class(rT116run_type(C)); return R; } /*TYPE_REAL*/void rT116mapping_c_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms3_116); }/*TYPE_REAL*/T0* rT116smallest_ancestor(T116 *C,T0* a1){ T0* R=NULL; T0* _rto=NULL; _rto=XrT62run_type(a1); /*IF*/if (XrT62is_integer(_rto)) { R=(T0 *)C; } else if (XrT62is_real(_rto)) { R=(T0 *)C; } else if (XrT62is_double(_rto)) { R=a1; } else { R=rT118smallest_ancestor((T118*)rT116type_real_ref(),_rto); } /*FI*/return R; } /*TYPE_REAL*/void rT116to_reference(T116 *C){ rT44to_reference((T44*)oRBC27cpp,(T0 *)C,rT116type_real_ref()); }/*TYPE_REAL*/int rT116is_a(T116 *C,T0* a1){ int R=0; /*IF*/if ((XrT62is_real(a1))||(XrT62is_double(a1))) { R=1; } else { R=rT53is_subclass_of((T53*)rT116base_class(C),XrT62base_class(a1)); /*IF*/if (R) { rT116used_as_reference(); } /*FI*/} /*FI*//*IF*/if (!(R)) { rT48add_type((T0 *)C,(T0 *)ms105_27); rT48add_type(a1,(T0 *)ms102_27); } /*FI*/return R; } /*TYPE_REAL*/void rT116make(T116 *C,T0* a1){ {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms55_27,a1); C->_base_class_name=(T0 *)n;} }/*TYPE_REAL*/void rT116to_expanded(T116 *C){ rT44to_expanded((T44*)oRBC27cpp,(T0 *)C,rT116type_real_ref()); }/*TYPE_REAL*/void rT116c_type_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms2_116); }int ofBC27type_real_ref=0; T0*oRBC27type_real_ref; /*TYPE_REAL*/T0* rT116type_real_ref(/*C*/void){ if (ofBC27type_real_ref==0){ T0* R=NULL; T0* _real_ref=NULL; ofBC27type_real_ref=1; {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms56_27,NULL); _real_ref=(T0 *)n;} {T118 *n=((T118*)se_new(118)); /*[IRF3:make*//*AW*/(n)->_base_class_name=(_real_ref);/*]*/ R=(T0 *)n;} oRBC27type_real_ref=R;} return oRBC27type_real_ref;} /*TYPE_REAL*/T0* rT116run_type(T116 *C){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_REAL*/T0* rT116to_runnable(T116 *C,T0* a1){ T0* R=NULL; R=(T0 *)C; rT116check_type(C); return R; } /*TYPE_REAL*/void rT116error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*TYPE_REAL*/T0* rT116start_position(T116 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_REAL*/T0* rT116base_class(T116 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_REAL*/int rT116is_a_in(T116 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms55_27/*)*/,XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT116to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } int ofBC116check_type=0; /*TYPE_REAL*/void rT116check_type(T116 *C){ if (ofBC116check_type==0){ T0* _rc=NULL; T0* _bc=NULL; ofBC116check_type=1; _bc=rT116base_class(C); /*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _rc=rT116run_class(C); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (!(((T53*)_bc)->_is_expanded)) { rT116error(rT116start_position(C),(T0 *)ms4_116); } /*FI*/} /*FI*/}} /*TYPE_REAL*/int rT116has_creation(T116 *C,T0* a1){ int R=0; rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position); rT116error(rT116start_position(C),(T0 *)ms1_110); return R; } /*TYPE_REAL*/void rT116load_ref(/*C*/T0* a1){ T0* _rf=NULL; T0* _rc=NULL; T0* _cn=NULL; {T51 *n=((T51*)se_new(51)); rT51make(n,a1,NULL); _cn=(T0 *)n;} _rc=rT53run_class((T53*)rT51base_class((T51*)_cn)); rT269set_at_run_time((T269*)_rc); _rf=rT269get_feature_with((T269*)_rc,(T0 *)ms2_110); }/*TYPE_STRING*/T0* rT117run_type(T117 *C){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_STRING*/T0* rT117to_runnable(T117 *C,T0* a1){ T0* R=NULL; R=(T0 *)C; rT117check_type(C); return R; } /*TYPE_STRING*/void rT117cast_to_ref(T117 *C){ XrT62cast_to_ref(rT117run_type(C)); }/*TYPE_STRING*/void rT117error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*TYPE_STRING*/T0* rT117start_position(T117 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_STRING*/T0* rT117generic_list(T117 *C){ T0* R=NULL; rT48add_type((T0 *)C,(T0 *)ms1_62); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ return R; } /*TYPE_STRING*/T0* rT117look_up_for(T117 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT117base_class(C),a1,a2); return R; } /*TYPE_STRING*/void rT117mapping_c_in(/*C*/T0* a1){ rT7extend((T7*)a1,'T'); rT2append_in(/*(IRF4*/7/*)*/,a1); }/*TYPE_STRING*/T0* rT117run_class(T117 *C){ T0* R=NULL; R=rT55run_class(rT117run_type(C)); return R; } /*TYPE_STRING*/T0* rT117smallest_ancestor(T117 *C,T0* a1){ T0* R=NULL; T0* _rto_bc=NULL; T0* _rto=NULL; _rto=XrT62run_type(a1); /*IF*/if (XrT62is_string(_rto)) { R=(T0 *)C; } else if (XrT62is_expanded(_rto)) { R=XrT62smallest_ancestor(_rto,(T0 *)C); } else { _rto_bc=XrT62base_class(_rto); /*IF*/if (rT53is_subclass_of((T53*)_rto_bc,rT117base_class(C))) { R=(T0 *)C; } else { R=XrT62smallest_ancestor(_rto,(T0 *)C); } /*FI*/} /*FI*/return R; } /*TYPE_STRING*/T0* rT117base_class(T117 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_STRING*/int rT117is_a_in(T117 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)/*(IRF4*/(T0 *)ms57_27/*)*/,XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT117to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } /*TYPE_STRING*/int rT117displacement(/*C*/void){ int R=0; void * _p=0; R=((0),sizeof(T8)); return R; } /*TYPE_STRING*/int rT117is_a(T117 *C,T0* a1){ int R=0; /*IF*/if (XrT62is_string(a1)) { R=1; } else { R=rT53is_subclass_of((T53*)rT117base_class(C),XrT62base_class(a1)); } /*FI*//*IF*/if (!(R)) { rT48add_type((T0 *)C,(T0 *)ms105_27); rT48add_type(a1,(T0 *)ms102_27); } /*FI*/return R; } /*TYPE_STRING*/int rT117has_creation(T117 *C,T0* a1){ int R=0; R=rT53has_creation((T53*)rT117base_class(C),a1); return R; } int ofBC117check_type=0; /*TYPE_STRING*/void rT117check_type(T117 *C){ if (ofBC117check_type==0){ T0* _rc=NULL; T0* _bc=NULL; ofBC117check_type=1; _bc=rT117base_class(C); /*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { _rc=rT117run_class(C); } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (((T53*)_bc)->_is_expanded) { rT117error(rT117start_position(C),(T0 *)ms2_117); } /*FI*/} /*FI*/}} /*TYPE_STRING*/void rT117make(T117 *C,T0* a1){ {T51 *n=((T51*)se_new(51)); rT51make(n,(T0 *)ms57_27,a1); C->_base_class_name=(T0 *)n;} }/*TYPE_STRING*/void rT117c_type_in(/*C*/T0* a1){ rT7append((T7*)a1,(T0 *)ms3_62); }/*TYPE_CLASS*/T0* rT118type_any(/*C*/void){ if (ofBC27type_any==0){ T0* R=NULL; ofBC27type_any=1; {T91 *n=((T91*)se_new(91)); rT91make(n,NULL); R=(T0 *)n;} oRBC27type_any=R;} return oRBC27type_any;} /*TYPE_CLASS*/void rT118c_initialize_expanded(T118 *C){ T0* _rf=NULL; int _i=0; T0* _wa=NULL; rT44put_character((T44*)oRBC27cpp,'\173'); _wa=rT269writable_attributes((T269*)rT118run_class(C)); /*IF*/if (!(_wa)) { rT44put_string((T44*)oRBC27cpp,(T0 *)ms14_62); } else { _i=/*XrT*ARRAY[RUN_FEATURE]*/((T273*)_wa)->_upper; while (!((_i)==(0))) { _rf=/*XrT*ARRAY[RUN_FEATURE]*/rT273item((T273*)_wa,_i); XrT62c_initialize(/*XrT*RUN_FEATURE*/((T274*)_rf)->_result_type); _i=(_i)-(1); /*IF*/if ((_i)>(0)) { rT44put_character((T44*)oRBC27cpp,'\54'); } /*FI*/} } /*FI*/rT44put_character((T44*)oRBC27cpp,'\175'); }/*TYPE_CLASS*/void rT118c_initialize(T118 *C){ /*IF*/if (rT118is_expanded(C)) { rT118c_initialize_expanded(C); } else { rT44put_string((T44*)oRBC27cpp,(T0 *)ms3_118); } /*FI*/}/*TYPE_CLASS*/void rT118fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*TYPE_CLASS*/T0* rT118run_time_mark(T118 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_to_string; return R; } /*TYPE_CLASS*/T0* rT118run_type(T118 *C){ T0* R=NULL; R=(T0 *)C; return R; } /*TYPE_CLASS*/T0* rT118to_runnable(T118 *C,T0* a1){ T0* R=NULL; T0* _rc=NULL; T0* _bc=NULL; _bc=rT51base_class((T51*)(C)->_base_class_name); /*IF*/if (((T53*)_bc)->_is_expanded) { /*IF*/if (!(rT60fast_has((T60*)oRBC118check_memory,_bc))) { rT53check_expanded_with((T53*)_bc,(T0 *)C); rT60add_last((T60*)oRBC118check_memory,_bc); } /*FI*/} /*FI*/_rc=rT118run_class(C); R=(T0 *)C; return R; } /*TYPE_CLASS*/void rT118cast_to_ref(T118 *C){ XrT62cast_to_ref(rT118run_type(C)); }/*TYPE_CLASS*/int rT118id(T118 *C){ int R=0; R=((T53*)rT118base_class(C))->_id; return R; } /*TYPE_CLASS*/T0* rT118start_position(T118 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_CLASS*/T0* rT118generic_list(T118 *C){ T0* R=NULL; rT48add_type((T0 *)C,(T0 *)ms1_62); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ return R; } /*TYPE_CLASS*/int rT118is_reference(T118 *C){ int R=0; T0* _bc=NULL; R=!(((T53*)rT118base_class(C))->_is_expanded); return R; } /*TYPE_CLASS*/T0* rT118look_up_for(T118 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT118base_class(C),a1,a2); return R; } /*TYPE_CLASS*/void rT118mapping_c_in(T118 *C,T0* a1){ rT7extend((T7*)a1,'T'); rT2append_in(rT118id(C),a1); }/*TYPE_CLASS*/void rT118mapping_cast(T118 *C){ rT7copy((T7*)oRBC62tmp_string,(T0 *)ms4_62); rT2append_in(rT118id(C),oRBC62tmp_string); /*IF*/if (rT118is_reference(C)) { rT7extend((T7*)oRBC62tmp_string,'\52'); } /*FI*/rT7extend((T7*)oRBC62tmp_string,'\51'); rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string); }/*TYPE_CLASS*/T0* rT118run_class(T118 *C){ T0* R=NULL; R=rT55run_class(rT118run_type(C)); return R; } /*TYPE_CLASS*/int rT118is_expanded(T118 *C){ int R=0; R=((T53*)rT118base_class(C))->_is_expanded; return R; } /*TYPE_CLASS*/T0* rT118smallest_ancestor(T118 *C,T0* a1){ T0* R=NULL; T0* _bc=NULL; T0* _rto_bc=NULL; T0* _pl2=NULL; T0* _pl1=NULL; T0* _rto=NULL; _rto=XrT62run_type(a1); /*IF*/if (XrT62is_none(a1)) { R=(T0 *)C; } else if (XrT62is_any(_rto)) { R=_rto; } else { _rto_bc=XrT62base_class(_rto); _bc=rT118base_class(C); /*IF*/if (((T0 *)_rto_bc)==((T0 *)_bc)) { R=(T0 *)C; } else if (rT53is_subclass_of((T53*)_rto_bc,_bc)) { R=(T0 *)C; } else if (rT53is_subclass_of((T53*)_bc,_rto_bc)) { R=_rto; } else if ((XrT62is_expanded(_rto))&&(!(rT118is_expanded(C)))) { R=XrT62smallest_ancestor(_rto,(T0 *)C); } else { _pl1=((T53*)_bc)->_parent_list; _pl2=((T53*)_rto_bc)->_parent_list; /*IF*/if ((!(_pl1))||(!(_pl2))) { R=rT118type_any(); } else if ((rT133count((T133*)_pl2))==(1)) { R=XrT62smallest_ancestor(((T120*)rT133super((T133*)_pl2))->_type,(T0 *)C); } else if ((rT133count((T133*)_pl1))==(1)) { R=XrT62smallest_ancestor(((T120*)rT133super((T133*)_pl1))->_type,a1); } else { rT118fatal_error((T0 *)ms1_118); } /*FI*/} /*FI*/} /*FI*/return R; } /*TYPE_CLASS*/T0* rT118written_mark(T118 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_to_string; return R; } /*TYPE_CLASS*/T0* rT118base_class(T118 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_CLASS*/int rT118is_a_in(T118 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)rT118written_mark(C),XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT118to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } /*TYPE_CLASS*/void rT118c_struct(T118 *C){ T0* _wa=NULL; T0* _a=NULL; int _i=0; rT7copy((T7*)oRBC62tmp_string,(T0 *)ms5_62); rT2append_in(rT118id(C),oRBC62tmp_string); rT7extend((T7*)oRBC62tmp_string,'\173'); /*IF*/if (rT118is_reference(C)) { rT7append((T7*)oRBC62tmp_string,(T0 *)ms6_62); } /*FI*/_wa=rT269writable_attributes((T269*)rT118run_class(C)); /*IF*/if (!(_wa)) { rT7append((T7*)oRBC62tmp_string,(T0 *)ms7_62); } else { _i=/*XrT*ARRAY[RUN_FEATURE]*/((T273*)_wa)->_upper; while (!((_i)==(0))) { _a=/*XrT*ARRAY[RUN_FEATURE]*/rT273item((T273*)_wa,_i); XrT62c_type_in(XrT62run_type(/*XrT*RUN_FEATURE*/((T274*)_a)->_result_type),oRBC62tmp_string); rT7append((T7*)oRBC62tmp_string,(T0 *)ms8_62); rT7append((T7*)oRBC62tmp_string,/*XrT*FEATURE_NAME*/((T70*)/*XrT*RUN_FEATURE*/((T274*)_a)->_name)->_to_string); rT7extend((T7*)oRBC62tmp_string,'\73'); _i=(_i)-(1); } } /*FI*/rT7append((T7*)oRBC62tmp_string,(T0 *)ms9_62); rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string); }/*TYPE_CLASS*/int rT118displacement(T118 *C){ int R=0; void * _p=0; /*IF*/if (rT118is_reference(C)) { R=((0),sizeof(T8)); } else { R=rT118user_expanded_displacement(C); } /*FI*/return R; } /*TYPE_CLASS*/int rT118is_a(T118 *C,T0* a1){ int R=0; T0* _other_bcn=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; _other_bcn=XrT62base_class_name(a1); /*IF*/if (((T0 *)((T51*)_bcn)->_to_string)==((T0 *)((T51*)_other_bcn)->_to_string)) { R=1; } else if (rT51is_subclass_of((T51*)_bcn,_other_bcn)) { /*IF*/if (XrT62is_generic(a1)) { R=rT53is_a_vncg((T53*)rT51base_class((T51*)_bcn),(T0 *)C,a1); } else { R=1; } /*FI*/} /*FI*//*IF*/if (!(R)) { rT48add_type((T0 *)C,(T0 *)ms105_27); rT48add_type(a1,(T0 *)ms102_27); } /*FI*/return R; } /*TYPE_CLASS*/int rT118user_expanded_displacement(T118 *C){ int R=0; int _i=0; T0* _a=NULL; T0* _wa=NULL; _wa=rT269writable_attributes((T269*)rT118run_class(C)); /*IF*/if (((int)_wa)) { _i=/*XrT*ARRAY[RUN_FEATURE]*/((T273*)_wa)->_upper; while (!((_i)==(0))) { _a=/*XrT*ARRAY[RUN_FEATURE]*/rT273item((T273*)_wa,_i); R=(R)+(XrT62displacement(/*XrT*RUN_FEATURE*/((T274*)_a)->_result_type)); _i=(_i)-(1); } } /*FI*/return R; } /*TYPE_CLASS*/int rT118has_creation(T118 *C,T0* a1){ int R=0; R=rT53has_creation((T53*)rT118base_class(C),a1); return R; } T0*oRBC118check_memory; /*TYPE_CLASS*/void rT118c_typedef(T118 *C){ int _mem_id=0; _mem_id=rT118id(C); /*[IRF3:clear*//*AW*/((T7*)oRBC62tmp_string)->_count=(0);/*]*/ rT7append((T7*)oRBC62tmp_string,(T0 *)ms10_62); rT2append_in(rT118id(C),oRBC62tmp_string); rT7append((T7*)oRBC62tmp_string,(T0 *)ms11_62); rT2append_in(rT118id(C),oRBC62tmp_string); rT7append((T7*)oRBC62tmp_string,(T0 *)ms12_62); rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string); }/*TYPE_CLASS*/void rT118c_type_in(T118 *C,T0* a1){ /*IF*/if (rT118is_reference(C)) { rT7append((T7*)a1,(T0 *)ms2_118); } else { rT7extend((T7*)a1,'T'); rT2append_in(rT118id(C),a1); } /*FI*/}/*TYPE_GENERIC*/T0* rT119twin(T119 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id);AF_1 rT119copy((T119*)R,(T0 *)C); AF_0 /*FI*/return R; } /*TYPE_GENERIC*/void rT119fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*TYPE_GENERIC*/void rT119cast_to_ref(T119 *C){ rT119cast_to_ref((T119*)(C)->_run_type); }/*TYPE_GENERIC*/int rT119id(T119 *C){ int R=0; R=((T269*)rT119run_class(C))->_id; return R; } /*TYPE_GENERIC*/T0* rT119look_up_for(T119 *C,T0* a1,T0* a2){ T0* R=NULL; R=rT53look_up_for((T53*)rT119base_class(C),a1,a2); return R; } /*TYPE_GENERIC*/T0* rT119run_class(T119 *C){ T0* R=NULL; R=rT55run_class((C)->_run_type); return R; } /*TYPE_GENERIC*/void rT119mapping_c_in(T119 *C,T0* a1){ rT7extend((T7*)a1,'T'); rT2append_in(rT119id(C),a1); }/*TYPE_GENERIC*/void rT119mapping_cast(T119 *C){ rT7copy((T7*)oRBC62tmp_string,(T0 *)ms4_62); rT2append_in(rT119id(C),oRBC62tmp_string); /*IF*/{/*AT*/rT7extend((T7*)oRBC62tmp_string,'\52'); } /*FI*/rT7extend((T7*)oRBC62tmp_string,'\51'); rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string); }/*TYPE_GENERIC*/int rT119is_expanded(T119 *C){ int R=0; R=((T53*)rT119base_class(C))->_is_expanded; return R; } /*TYPE_GENERIC*/T0* rT119smallest_ancestor(/*C*/T0* a1){ T0* R=NULL; rT119fatal_error((T0 *)ms1_119); return R; } /*TYPE_GENERIC*/void rT119c_struct(T119 *C){ T0* _wa=NULL; T0* _a=NULL; int _i=0; rT7copy((T7*)oRBC62tmp_string,(T0 *)ms5_62); rT2append_in(rT119id(C),oRBC62tmp_string); rT7extend((T7*)oRBC62tmp_string,'\173'); /*IF*/{/*AT*/rT7append((T7*)oRBC62tmp_string,(T0 *)ms6_62); } /*FI*/_wa=rT269writable_attributes((T269*)rT119run_class(C)); /*IF*/if (!(_wa)) { rT7append((T7*)oRBC62tmp_string,(T0 *)ms7_62); } else { _i=/*XrT*ARRAY[RUN_FEATURE]*/((T273*)_wa)->_upper; while (!((_i)==(0))) { _a=/*XrT*ARRAY[RUN_FEATURE]*/rT273item((T273*)_wa,_i); XrT62c_type_in(XrT62run_type(/*XrT*RUN_FEATURE*/((T274*)_a)->_result_type),oRBC62tmp_string); rT7append((T7*)oRBC62tmp_string,(T0 *)ms8_62); rT7append((T7*)oRBC62tmp_string,/*XrT*FEATURE_NAME*/((T70*)/*XrT*RUN_FEATURE*/((T274*)_a)->_name)->_to_string); rT7extend((T7*)oRBC62tmp_string,'\73'); _i=(_i)-(1); } } /*FI*/rT7append((T7*)oRBC62tmp_string,(T0 *)ms9_62); rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string); }/*TYPE_GENERIC*/int rT119displacement(T119 *C){ int R=0; void * _p=0; /*IF*/{/*AT*/R=((0),sizeof(T8)); } /*FI*/return R; } /*TYPE_GENERIC*/int rT119is_a(T119 *C,T0* a1){ int R=0; T0* _t2=NULL; T0* _t1=NULL; int _i=0; /*IF*/if (XrT62is_none(a1)) { } else if (((T0 *)rT119run_class(C))==((T0 *)XrT62run_class(a1))) { R=1; } else if ((rT119is_expanded(C))&&(XrT62is_expanded(a1))) { } else if (XrT62is_generic(a1)) { /*IF*/if (((T0 *)rT119base_class(C))==((T0 *)XrT62base_class(a1))) { R=1; _i=((T108*)(C)->_generic_list)->_upper; while (!((!(R))||((_i)==(0)))) { _t1=XrT62run_type(rT108item((T108*)(C)->_generic_list,_i)); _t2=XrT62run_type(rT108item((T108*)XrT62generic_list(a1),_i)); /*IF*/if (XrT62is_a(_t1,_t2)) { _i=(_i)-(1); } else { R=0; rT48append((T0 *)ms98_27); } /*FI*/} } else if (rT53is_subclass_of((T53*)rT119base_class(C),XrT62base_class(a1))) { R=rT53is_a_vncg((T53*)rT119base_class(C),(T0 *)C,a1); } /*FI*/} else { /*IF*/if (rT53is_subclass_of((T53*)rT119base_class(C),XrT62base_class(a1))) { R=1; } /*FI*/} /*FI*//*IF*/if (!(R)) { rT48add_type((T0 *)C,(T0 *)ms105_27); rT48add_type(a1,(T0 *)ms2_119); } /*FI*/return R; } /*TYPE_GENERIC*/int rT119user_expanded_displacement(T119 *C){ int R=0; int _i=0; T0* _a=NULL; T0* _wa=NULL; _wa=rT269writable_attributes((T269*)rT119run_class(C)); /*IF*/if (((int)_wa)) { _i=/*XrT*ARRAY[RUN_FEATURE]*/((T273*)_wa)->_upper; while (!((_i)==(0))) { _a=/*XrT*ARRAY[RUN_FEATURE]*/rT273item((T273*)_wa,_i); R=(R)+(XrT62displacement(/*XrT*RUN_FEATURE*/((T274*)_a)->_result_type)); _i=(_i)-(1); } } /*FI*/return R; } /*TYPE_GENERIC*/void rT119make(T119 *C,T0* a1,T0* a2){ int _is_rt=0; T0* _t=NULL; int _i=0; C->_base_class_name=a1; C->_generic_list=a2; {T7 *n=((T7*)se_new(7)); rT7copy(n,((T51*)a1)->_to_string); C->_written_mark=(T0 *)n;} rT7extend((T7*)(C)->_written_mark,'\133'); _i=1; _is_rt=1; while (!((_i)>(((T108*)a2)->_upper))) { _t=rT108item((T108*)a2,_i); rT7append((T7*)(C)->_written_mark,XrT62written_mark(_t)); /*IF*/if (!(XrT62is_run_type(_t))) { _is_rt=0; } /*FI*/_i=(_i)+(1); /*IF*/if ((_i)<=(((T108*)a2)->_upper)) { rT7extend((T7*)(C)->_written_mark,'\54'); } /*FI*/} rT7extend((T7*)(C)->_written_mark,'\135'); /*IF*/if (_is_rt) { C->_run_type=(T0 *)C; } /*FI*/}/*TYPE_GENERIC*/void rT119c_type_in(T119 *C,T0* a1){ /*IF*/{/*AT*/rT7append((T7*)a1,(T0 *)ms3_119); } /*FI*/}/*TYPE_GENERIC*/void rT119c_typedef(T119 *C){ int _mem_id=0; _mem_id=rT119id(C); /*[IRF3:clear*//*AW*/((T7*)oRBC62tmp_string)->_count=(0);/*]*/ rT7append((T7*)oRBC62tmp_string,(T0 *)ms10_62); rT2append_in(rT119id(C),oRBC62tmp_string); rT7append((T7*)oRBC62tmp_string,(T0 *)ms11_62); rT2append_in(rT119id(C),oRBC62tmp_string); rT7append((T7*)oRBC62tmp_string,(T0 *)ms12_62); rT44put_string((T44*)oRBC27cpp,oRBC62tmp_string); }/*TYPE_GENERIC*/int rT119is_run_type(T119 *C){ int R=0; R=((int)(C)->_run_type); return R; } /*TYPE_GENERIC*/T0* rT119run_time_mark(T119 *C){ T0* R=NULL; R=((T119*)(C)->_run_type)->_written_mark; return R; } /*TYPE_GENERIC*/T0* rT119to_runnable(T119 *C,T0* a1){ T0* R=NULL; T0* _fgl=NULL; T0* _bc=NULL; T0* _rgl=NULL; T0* _t=NULL; int _i=0; /*IF*/if (((T0 *)(C)->_run_type)==((T0 *)C)) { R=(T0 *)C; } else if (!((C)->_run_type)) { _bc=rT119base_class(C); _fgl=((T53*)_bc)->_formal_generic_list; /*IF*/if (!(_fgl)) { rT48add_position(rT119start_position(C)); rT48append(((T51*)((T53*)_bc)->_base_class_name)->_to_string); rT119fatal_error((T0 *)ms4_119); } else if ((rT89count((T89*)_fgl))!=(rT108count((T108*)(C)->_generic_list))) { rT48add_position(rT119start_position(C)); rT48add_position(((T89*)_fgl)->_start_position); rT119fatal_error((T0 *)ms5_119); } /*FI*/_rgl=(C)->_generic_list; _i=((T108*)_rgl)->_upper; while (!((_i)==(0))) { _t=rT108item((T108*)_rgl,_i); /*IF*/if (((T0 *)XrT62run_type(_t))==((T0 *)_t)) { _i=(_i)-(1); } else { _i=0; _rgl=NULL; } /*FI*/} /*IF*/if (!(_rgl)) { _rgl=rT108twin((T108*)(C)->_generic_list); _i=((T108*)_rgl)->_upper; while (!((_i)==(0))) { _t=XrT62to_runnable(rT108item((T108*)_rgl,_i),a1); /*IF*/if ((!(_t))||(!(XrT62is_run_type(_t)))) { rT48add_type(rT108item((T108*)_rgl,_i),(T0 *)ms106_27); rT48print_as_error((T48*)oRBC27eh); _i=0; } else { rT108put((T108*)_rgl,XrT62run_type(_t),_i); _i=(_i)-(1); } /*FI*/} } /*FI*//*IF*/if ((/*(IRF4*/((T48*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (((T0 *)_rgl)==((T0 *)(C)->_generic_list)) { C->_run_type=(T0 *)C; } else { {T119 *n=((T119*)se_new(119)); rT119make(n,(C)->_base_class_name,_rgl); C->_run_type=(T0 *)n;} /*[IRF3:set_run_type*//*AW*/((T119*)(C)->_run_type)->_run_type=((C)->_run_type);/*]*/ } /*FI*/R=(T0 *)C; } else { rT119error(rT119start_position(C),(T0 *)ms6_119); } /*FI*/} else { R=rT119twin(C); /*[IRF3:set_run_type*//*AW*/((T119*)R)->_run_type=(NULL);/*]*/ R=rT119to_runnable((T119*)rT119twin(C),a1); } /*FI*/return R; } /*TYPE_GENERIC*/void rT119error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*TYPE_GENERIC*/T0* rT119start_position(T119 *C){ T0* R=NULL; R=((T51*)(C)->_base_class_name)->_start_position; return R; } /*TYPE_GENERIC*/T0* rT119base_class(T119 *C){ T0* R=NULL; T0* _bcn=NULL; _bcn=(C)->_base_class_name; /*IF*/if (((int)_bcn)) { R=rT51base_class((T51*)_bcn); } else { rT48append((T0 *)ms2_62); rT48add_type((T0 *)C,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/return R; } /*TYPE_GENERIC*/void rT119copy(T119 *C,T0* a1){ C->_base_class_name=((T119*)a1)->_base_class_name; C->_written_mark=((T119*)a1)->_written_mark; C->_generic_list=rT108twin((T108*)((T119*)a1)->_generic_list); }/*TYPE_GENERIC*/int rT119is_a_in(T119 *C,T0* a1,T0* a2){ int R=0; T0* _ct=NULL; T0* _t2=NULL; T0* _t1=NULL; /*IF*/if (rT7is_equal((T7*)(C)->_written_mark,XrT62written_mark(a1))) { R=1; } else { _ct=((T269*)a2)->_current_type; _t1=rT119to_runnable(C,_ct); _t2=XrT62to_runnable(a1,_ct); /*IF*/if (rT7is_equal((T7*)XrT62run_time_mark(_t1),XrT62run_time_mark(_t2))) { R=1; } else { R=XrT62is_a(_t1,_t2); } /*FI*/} /*FI*/return R; } /*TYPE_GENERIC*/int rT119has_creation(T119 *C,T0* a1){ int R=0; /*IF*/if (((T0 *)C)==((T0 *)(C)->_run_type)) { R=rT53has_creation((T53*)rT119base_class(C),a1); } else { R=rT119has_creation((T119*)(C)->_run_type,a1); } /*FI*/return R; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.