This is compile_to_c4.c in view mode; [Download] [Up]
/* ANSI C code generated by SmallEiffel. */ /* -- SmallEiffel -- Release (- 0.95) -- 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" T0* rT154try_to_undefine_aux(T154 *C,T0* a1,T0* a2){ T0* R=NULL; (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT154start_position(C)); rT154error(XrT67start_position(a1),(T0 *)ms1532); rT154fe_undefine(a1,a2); return R; } int rT154can_hide(T154 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT154error(rT154start_position(C),(T0 *)ms497); } /*FI*/} /*FI*//*IF*/if (((T0 *)/*(IRF4*/NULL/*)*/)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!(/*(IRF4*/NULL/*)*/))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT154error(rT154start_position(C),(T0 *)ms498); } else if ((rT92count((T92*)/*(IRF4*/NULL/*)*/))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT154error(rT154start_position(C),(T0 *)ms499); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms500); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms501); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT92is_a_in((T92*)/*(IRF4*/NULL/*)*/,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT154start_position(C)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms502); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms503); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT154base_class_name(T154 *C){ T0* R=NULL; R=((T50*)(C)->_base_class)->_base_class_name; return R; } T0* rT154value(T154 *C,int a1){ T0* R=NULL; R=(C)->_value_mem; return R; } void rT154make_e_feature(T154 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } void rT154make(T154 *C,T0* a1,T0* a2,T0* a3){ rT154make_e_feature(C,a1,a2); C->_value_mem=a3; } T0* rT155first_name(T155 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; } void rT155fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT155to_run_feature(T155 *C,T0* a1,T0* a2){ T0* R=NULL; T0* _rc=NULL; _rc=XrT58run_class(a1); R=rT261at((T261*)_rc,a2); if ((int)R) switch (((T0 *)R)->id) { case 278: break; default: R = NULL; };/*IF*/if (!(R)) { {T278 *n=((T278*)se_new(278)); rT278make(n,a1,a2,(T0 *)C); R=(T0 *)n;} } /*FI*/return R; } void rT155error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } void rT155fe_undefine(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms479); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms480); (/*UT*/(void)(T45*)oRBC27eh); rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string); rT155fatal_error((T0 *)ms481); } int rT155is_merge_with(T155 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms484); } /*FI*/} /*FI*//*IF*/if (((T0 *)/*(IRF4*/NULL/*)*/)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!(/*(IRF4*/NULL/*)*/))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms485); } else if ((rT92count((T92*)/*(IRF4*/NULL/*)*/))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms486); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { rT45error((T45*)oRBC27eh,(T0 *)ms487); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT92is_a_in((T92*)/*(IRF4*/NULL/*)*/,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms490); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT155start_position(T155 *C){ T0* R=NULL; R=XrT67start_position(rT155first_name(C)); return R; } void rT155collect_for(/*C*/int a1){ /*IF*/if ((a1)==(1001)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT269fast_has((T269*)oRBC62require_collector,/*(IRF4*/NULL/*)*/))) { rT269add_last((T269*)oRBC62require_collector,/*(IRF4*/NULL/*)*/); } /*FI*/} /*FI*/} else { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { rT157add_into((T157*)/*(IRF4*/NULL/*)*/,oRBC62assertion_collector); } /*FI*/} /*FI*/} void rT155add_into(T155 *C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1))); _i=1; while (!((_i)>(rT128count((T128*)(C)->_names)))) { _fn=rT128item((T128*)(C)->_names,_i); /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) { _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn))); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(_fn)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i))); rT45error((T45*)oRBC27eh,(T0 *)ms414); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT67to_string(_fn)); rT45error((T45*)oRBC27eh,(T0 *)ms36); } else { rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn)); } /*FI*/_i=(_i)+(1); } } T0* rT155try_to_undefine(T155 *C,T0* a1,T0* a2){ T0* R=NULL; /*IF*/if (XrT67is_frozen(a1)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT155start_position(C)); rT155error(XrT67start_position(a1),(T0 *)ms478); rT155fe_undefine(a1,a2); } else { R=rT155try_to_undefine_aux(C,a1,a2); /*IF*/if (((int)R)) { XrT204set_clients(R,(C)->_clients); } else { rT155fe_undefine(a1,a2); } /*FI*/} /*FI*/return R; } T0* rT155try_to_undefine_aux(T155 *C,T0* a1,T0* a2){ T0* R=NULL; (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT155start_position(C)); rT155error(XrT67start_position(a1),(T0 *)ms1532); rT155fe_undefine(a1,a2); return R; } int rT155can_hide(T155 *C,T0* a1,T0* a2){ int R=0; int _ne=0; _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/; /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) { /*IF*/if (((!((C)->_result_type))||(!(XrT62result_type(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms497); } /*FI*/} /*FI*//*IF*/if (((T0 *)/*(IRF4*/NULL/*)*/)!=((T0 *)XrT62arguments(a1))) { /*IF*/if (((!(/*(IRF4*/NULL/*)*/))||(!(XrT62arguments(a1))))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms498); } else if ((rT92count((T92*)/*(IRF4*/NULL/*)*/))!=(rT92count((T92*)XrT62arguments(a1)))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); rT155error(rT155start_position(C),(T0 *)ms499); } /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)(C)->_result_type)) { /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms500); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms501); } /*FI*/} /*FI*/} /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) { /*IF*/if (((int)/*(IRF4*/NULL/*)*/)) { /*IF*/if (!(rT92is_a_in((T92*)/*(IRF4*/NULL/*)*/,XrT62arguments(a1),a2))) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(XrT62start_position(a1)); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(rT155start_position(C)); (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms502); (/*UT*/(void)(T45*)oRBC27eh); rT45append(XrT58run_time_mark(((T261*)a2)->_current_type)); rT45error((T45*)oRBC27eh,(T0 *)ms503); } /*FI*/} /*FI*/} /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0); return R; } T0* rT155base_class_name(T155 *C){ T0* R=NULL; R=((T50*)(C)->_base_class)->_base_class_name; return R; } T0* rT155value(T155 *C,int a1){ T0* R=NULL; R=(C)->_value_mem; return R; } void rT155make_e_feature(T155 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } void rT155make(T155 *C,T0* a1,T0* a2,T0* a3){ rT155make_e_feature(C,a1,a2); C->_value_mem=a3; } int rT157use_current(T157 *C){ int R=0; int _i=0; /*IF*/if (((int)(C)->_list)) { _i=((T158*)(C)->_list)->_upper; while (!((R)||((_i)==(0)))) { R=rT64use_current((T64*)rT158item((T158*)(C)->_list,_i)); _i=(_i)-(1); } } /*FI*/return R; } void rT157add_into(T157 *C,T0* a1){ T0* _a=NULL; int _i=0; /*IF*/if (((int)(C)->_list)) { _i=1; while (!((_i)>(((T158*)(C)->_list)->_upper))) { _a=rT158item((T158*)(C)->_list,_i); /*IF*/if (!(rT158fast_has((T158*)a1,_a))) { rT158add_last((T158*)a1,_a); } /*FI*/_i=(_i)+(1); } } /*FI*/} void rT157from_runnable(T157 *C,T0* a1){ C->_list=a1; C->_current_type=((T64*)rT158item((T158*)(C)->_list,1))->_current_type; } void rT157compile_to_c_old(T157 *C){ int _i=0; /*IF*/if (((int)(C)->_list)) { _i=((T158*)(C)->_list)->_lower; while (!((_i)>(((T158*)(C)->_list)->_upper))) { rT64compile_to_c_old((T64*)rT158item((T158*)(C)->_list,_i)); _i=(_i)+(1); } } /*FI*/} void rT157compile_to_c(T157 *C){ int _i=0; /*(IRF3*/(((T43*)oRBC27cpp)->_check_assertion_mode)=(/*(IRF4*/(T0 *)ms859/*)*/); /*)*//*IF*/if (((int)(C)->_list)) { rT43put_string((T43*)oRBC27cpp,(T0 *)ms781); rT43put_string((T43*)oRBC27cpp,/*(IRF4*/(T0 *)ms859/*)*/); rT43put_string((T43*)oRBC27cpp,(T0 *)ms782); rT43put_string((T43*)oRBC27cpp,/*(IRF4*/(T0 *)ms859/*)*/); rT43put_string((T43*)oRBC27cpp,(T0 *)ms783); _i=1; while (!((_i)>(((T158*)(C)->_list)->_upper))) { rT64compile_to_c((T64*)rT158item((T158*)(C)->_list,_i)); _i=(_i)+(1); } rT43put_string((T43*)oRBC27cpp,(T0 *)ms789); rT43put_string((T43*)oRBC27cpp,/*(IRF4*/(T0 *)ms859/*)*/); rT43put_string((T43*)oRBC27cpp,(T0 *)ms790); } /*FI*/} void rT157make(T157 *C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_header_comment=a2; C->_list=a3; } int rT137use_current(T137 *C){ int R=0; int _i=0; /*IF*/if (((int)(C)->_list)) { _i=((T158*)(C)->_list)->_upper; while (!((R)||((_i)==(0)))) { R=rT64use_current((T64*)rT158item((T158*)(C)->_list,_i)); _i=(_i)-(1); } } /*FI*/return R; } int rT137empty(T137 *C){ int R=0; R=!((C)->_list); return R; } void rT137from_runnable(T137 *C,T0* a1){ C->_list=a1; C->_current_type=((T64*)rT158item((T158*)(C)->_list,1))->_current_type; } void rT137compile_to_c(T137 *C){ int _i=0; /*(IRF3*/(((T43*)oRBC27cpp)->_check_assertion_mode)=(/*(IRF4*/(T0 *)ms848/*)*/); /*)*//*IF*/if (((int)(C)->_list)) { rT43put_string((T43*)oRBC27cpp,(T0 *)ms781); rT43put_string((T43*)oRBC27cpp,/*(IRF4*/(T0 *)ms848/*)*/); rT43put_string((T43*)oRBC27cpp,(T0 *)ms782); rT43put_string((T43*)oRBC27cpp,/*(IRF4*/(T0 *)ms848/*)*/); rT43put_string((T43*)oRBC27cpp,(T0 *)ms783); _i=1; while (!((_i)>(((T158*)(C)->_list)->_upper))) { rT64compile_to_c((T64*)rT158item((T158*)(C)->_list,_i)); _i=(_i)+(1); } rT43put_string((T43*)oRBC27cpp,(T0 *)ms789); rT43put_string((T43*)oRBC27cpp,/*(IRF4*/(T0 *)ms848/*)*/); rT43put_string((T43*)oRBC27cpp,(T0 *)ms790); } /*FI*/} void rT137make(T137 *C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_header_comment=a2; C->_list=a3; } T0* rT236current_type(T236 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T140*)(C)->_run_compound)->_current_type; } /*FI*/return R; } T0* rT236to_runnable(T236 *C,T0* a1){ T0* R=NULL; int _loop_check=0; T0* _lb=NULL; T0* _ue=NULL; T0* _vc=NULL; T0* _ic=NULL; T0* _i=NULL; _loop_check=rT44loop_check((T44*)oRBC27eiffel_run_control); /*IF*/if (!((C)->_run_compound)) { C->_run_compound=a1; /*IF*/if (((int)(C)->_initialize)) { _i=rT140to_runnable((T140*)(C)->_initialize,rT236current_type(C)); /*IF*/if (((int)_i)) { C->_initialize=_i; } else { rT236error((C)->_start_position,(T0 *)ms1265); } /*FI*/} /*FI*//*IF*/if ((_loop_check)&&(((int)(C)->_invariant_clause))) { _ic=rT237to_runnable((T237*)(C)->_invariant_clause,((T140*)a1)->_current_type); /*IF*/if (((int)_ic)) { C->_invariant_clause=_ic; } else { rT236error((C)->_start_position,(T0 *)ms1266); } /*FI*/} /*FI*//*IF*/if ((_loop_check)&&(((int)(C)->_variant_clause))) { _vc=XrT238to_runnable((C)->_variant_clause,rT236current_type(C)); /*IF*/if (((int)_vc)) { C->_variant_clause=_vc; } else { rT236error((C)->_start_position,(T0 *)ms1267); } /*FI*/} /*FI*/_ue=XrT68to_runnable((C)->_until_expression,rT236current_type(C)); /*IF*/if (((int)_ue)) { C->_until_expression=_ue; } else { rT236error((C)->_start_position,(T0 *)ms1268); } /*FI*//*IF*/if (((int)(C)->_loop_body)) { _lb=rT140to_runnable((T140*)(C)->_loop_body,rT236current_type(C)); /*IF*/if (((int)_lb)) { C->_loop_body=_lb; } else { rT236error((C)->_start_position,(T0 *)ms1269); } /*FI*/} /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) { R=(T0 *)C; } /*FI*/} else { {T236 *n=((T236*)se_new(236)); rT236make(n,(C)->_start_position,(C)->_initialize,(C)->_invariant_clause,(C)->_variant_clause,(C)->_until_expression,(C)->_loop_body); R=(T0 *)n;} R=rT236to_runnable((T236*)R,a1); } /*FI*/return R; } void rT236error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT236add_comment(T236 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else {/*AT*//*IF*/if ((rT59count((T59*)a1))==(1)) { R=(T0 *)C; } else { {T217 *n=((T217*)se_new(217)); rT217make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/} /*FI*/return R; } int rT236use_current(T236 *C){ int R=0; int _loop_check=0; _loop_check=rT44loop_check((T44*)oRBC27eiffel_run_control); /*IF*/if ((_loop_check)&&(((int)(C)->_variant_clause))) { R=(R)||(XrT238use_current((C)->_variant_clause)); } /*FI*//*IF*/if (((int)(C)->_initialize)) { R=(R)||(rT140use_current((T140*)(C)->_initialize)); } /*FI*/R=(R)||(XrT68use_current((C)->_until_expression)); /*IF*/if ((_loop_check)&&(((int)(C)->_invariant_clause))) { R=(R)||(rT237use_current((T237*)(C)->_invariant_clause)); } /*FI*//*IF*/if (((int)(C)->_loop_body)) { R=(R)||(rT140use_current((T140*)(C)->_loop_body)); } /*FI*/return R; } void rT236compile_to_c(T236 *C){ int _invariant_flag=0; int _variant_flag=0; int _loop_check=0; _loop_check=rT44loop_check((T44*)oRBC27eiffel_run_control); /*IF*/if ((_loop_check)&&(((int)(C)->_variant_clause))) { rT43put_string((T43*)oRBC27cpp,(T0 *)ms1334); _variant_flag=1; } /*FI*//*IF*/if (((int)(C)->_initialize)) { rT140compile_to_c((T140*)(C)->_initialize); } /*FI*//*IF*/if ((_loop_check)&&(((int)(C)->_invariant_clause))) { rT237compile_to_c((T237*)(C)->_invariant_clause); _invariant_flag=1; } /*FI*/rT43put_string((T43*)oRBC27cpp,(T0 *)ms1336); /*IF*/if (rT44no_check((T44*)oRBC27eiffel_run_control)) { rT43trace_boolean_expression((T43*)oRBC27cpp,(C)->_until_expression); } else { XrT68compile_to_c((C)->_until_expression); } /*FI*/rT43put_string((T43*)oRBC27cpp,(T0 *)ms1337); /*IF*/if (_variant_flag) { rT43variant_check((T43*)oRBC27cpp,XrT238expression((C)->_variant_clause)); } /*FI*//*IF*/if (((int)(C)->_loop_body)) { rT140compile_to_c((T140*)(C)->_loop_body); } /*FI*//*IF*/if (_invariant_flag) { rT237compile_to_c((T237*)(C)->_invariant_clause); } /*FI*/rT43put_string((T43*)oRBC27cpp,(T0 *)ms1340); /*IF*/if (_variant_flag) { rT43put_string((T43*)oRBC27cpp,(T0 *)ms1341); } /*FI*/} void rT236make(T236 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6){ C->_start_position=a1; C->_initialize=a2; C->_invariant_clause=a3; C->_variant_clause=a4; C->_until_expression=a5; C->_loop_body=a6; } T0* rT226current_type(T226 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T140*)(C)->_run_compound)->_current_type; } /*FI*/return R; } T0* rT226twin(T226 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id); AF_1 rT226copy((T226*)R,(T0 *)C); AF_0 /*FI*/return R; } T0* rT226to_runnable(T226 *C,T0* a1){ T0* R=NULL; T0* _wl=NULL; T0* _te=NULL; T0* _e=NULL; /*IF*/if (!((C)->_run_compound)) { C->_run_compound=a1; _e=XrT68to_runnable((C)->_expression,rT226current_type(C)); /*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) { C->_expression=_e; _te=XrT58run_type(XrT68result_type(_e)); } /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (XrT58is_character(_te)) { /*IF*/if (((int)(C)->_when_list)) { C->_when_list=rT232to_runnable_character((T232*)(C)->_when_list,(T0 *)C); /*IF*/if (!((C)->_when_list)) { rT226error((C)->_start_position,(T0 *)ms1261); } /*FI*/} /*FI*/} else if (XrT58is_integer(_te)) { /*IF*/if (((int)(C)->_when_list)) { C->_when_list=rT232to_runnable_integer((T232*)(C)->_when_list,(T0 *)C); /*IF*/if (!((C)->_when_list)) { rT226error((C)->_start_position,(T0 *)ms1261); } /*FI*/} /*FI*/} else { (/*UT*/(void)(T45*)oRBC27eh); rT45append((T0 *)ms1263); (/*UT*/(void)(T45*)oRBC27eh); rT45add_type(_te,(T0 *)ms1264); (/*UT*/(void)(T45*)oRBC27eh); rT45add_position((C)->_start_position); rT45print_as_error((T45*)oRBC27eh); } /*FI*/} /*FI*//*IF*/if (((int)(C)->_else_compound)) { C->_else_compound=rT140to_runnable((T140*)(C)->_else_compound,rT226current_type(C)); } /*FI*/R=(T0 *)C; } else { R=rT226twin(C); {T232 *n=((T232*)se_new(232)); rT232from_when_list(n,(C)->_when_list); _wl=(T0 *)n;} /*(IRF3*/(((T226*)R)->_when_list)=(_wl); /*)*//*(IRF3*/(((T226*)R)->_run_compound)=(NULL); /*)*/R=rT226to_runnable((T226*)R,a1); } /*FI*/return R; } void rT226error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT226add_comment(T226 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else {/*AT*//*IF*/if ((rT59count((T59*)a1))==(1)) { R=(T0 *)C; } else { {T217 *n=((T217*)se_new(217)); rT217make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/} /*FI*/return R; } int rT226use_current(T226 *C){ int R=0; R=(R)||(XrT68use_current((C)->_expression)); /*IF*/if (((int)(C)->_when_list)) { R=(R)||(rT232use_current((T232*)(C)->_when_list)); } /*FI*//*IF*/if (((int)(C)->_else_compound)) { R=(R)||(rT140use_current((T140*)(C)->_else_compound)); } /*FI*/return R; } void rT226set_else_compound(T226 *C,T0* a1,T0* a2){ C->_else_position=a1; C->_else_compound=a2; } void rT226compile_to_c(T226 *C){ int _go_out_inspect=0; rT43inspect_incr((T43*)oRBC27cpp); _go_out_inspect=rT43new_goto((T43*)oRBC27cpp); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1315); rT43put_inspect((T43*)oRBC27cpp); rT43put_character((T43*)oRBC27cpp,'\75'); XrT68compile_to_c((C)->_expression); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1317); /*IF*/if (((int)(C)->_when_list)) { rT232compile_to_c((T232*)(C)->_when_list,_go_out_inspect); } /*FI*//*IF*/if (!((C)->_else_position)) { /*IF*/if (rT44no_check((T44*)oRBC27eiffel_run_control)) { rT43put_error1((T43*)oRBC27cpp,(T0 *)ms1332,(C)->_start_position); } /*FI*/} else { /*IF*/if (((int)(C)->_else_compound)) { rT140compile_to_c((T140*)(C)->_else_compound); } /*FI*/} /*FI*/rT43put_goto_label((T43*)oRBC27cpp,_go_out_inspect); rT43put_string((T43*)oRBC27cpp,(T0 *)ms1333); rT43inspect_decr((T43*)oRBC27cpp); } int rT226includes(T226 *C,int a1){ int R=0; R=rT232includes_integer((T232*)(C)->_when_list,a1); return R; } void rT226copy(T226 *C,T0* a1){ /*IF*//*AF*//*AE*/ memcpy(C,a1,s[C->id]); /*FI*/} void rT226make(T226 *C,T0* a1,T0* a2){ C->_start_position=a1; C->_expression=a2; } void rT226add_when(T226 *C,T0* a1){ /*IF*/if (!((C)->_when_list)) { {T232 *n=((T232*)se_new(232)); /*(IRF3*/((n)->_list)=(ma(233,0,1,a1)); /*)*/C->_when_list=(T0 *)n;} } else { rT232add_last((T232*)(C)->_when_list,a1); } /*FI*/} int rT172static_value(T172 *C){ int R=0; R=(C)->_static_value_mem; return R; } T0* rT172to_runnable(T172 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; C->_result_type=XrT262result_type(rT52top_rf((T52*)oRBC27small_eiffel)); R=(T0 *)C; } else { {T172 *n=((T172*)se_new(172)); rT172make(n,(C)->_start_position); R=(T0 *)n;} R=rT172to_runnable((T172*)R,a1); } /*FI*/return R; } void rT172error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT172add_comment(T172 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else { {T221 *n=((T221*)se_new(221)); rT221make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } T0* rT172to_key(T172 *C){ T0* R=NULL; R=(C)->_to_string; return R; } int rT172to_integer(T172 *C){ int R=0; rT172error((C)->_start_position,(T0 *)ms169); return R; } T0* rT172written_in(T172 *C){ T0* R=NULL; T0* _sp=NULL; _sp=(C)->_start_position; /*IF*/if (((int)_sp)) { R=((T46*)_sp)->_base_class_name; } /*FI*/return R; } int rT172is_a(T172 *C,T0* a1){ int R=0; R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1))); /*IF*/if (!(R)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position((C)->_start_position); rT172error(XrT68start_position(a1),(T0 *)ms1289); } /*FI*/return R; } void rT172make(T172 *C,T0* a1){ C->_to_string=(T0 *)ms289; C->_start_position=a1; } int rT89static_value(T89 *C){ int R=0; R=(C)->_static_value_mem; return R; } T0* rT89to_runnable(T89 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_current_type)) { C->_current_type=a1; R=(T0 *)C; } else if (((T0 *)(C)->_current_type)==((T0 *)a1)) { R=(T0 *)C; } else { {T89 *n=((T89*)se_new(89)); rT89make(n,(C)->_start_position,(C)->_is_written); R=(T0 *)n;} /*(IRF3*/(((T89*)R)->_current_type)=(a1); /*)*/} /*FI*/return R; } void rT89error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT89add_comment(T89 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } else { {T221 *n=((T221*)se_new(221)); rT221make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } T0* rT89result_type(T89 *C){ T0* R=NULL; R=(C)->_current_type; return R; } T0* rT89to_key(T89 *C){ T0* R=NULL; R=(C)->_to_string; return R; } int rT89to_integer(T89 *C){ int R=0; rT89error((C)->_start_position,(T0 *)ms169); return R; } T0* rT89written_in(T89 *C){ T0* R=NULL; T0* _sp=NULL; _sp=(C)->_start_position; /*IF*/if (((int)_sp)) { R=((T46*)_sp)->_base_class_name; } /*FI*/return R; } int rT89is_a(T89 *C,T0* a1){ int R=0; R=XrT58is_a(XrT58run_type(rT89result_type(C)),XrT58run_type(XrT68result_type(a1))); /*IF*/if (!(R)) { (/*UT*/(void)(T45*)oRBC27eh); rT45add_position((C)->_start_position); rT89error(XrT68start_position(a1),(T0 *)ms1289); } /*FI*/return R; } void rT89make(T89 *C,T0* a1,int a2){ C->_start_position=a1; C->_is_written=a2; } T0* rT122clients_for(T122 *C,T0* a1){ T0* R=NULL; T0* _ei=NULL; int _i=0; _i=1; while (!((((int)R))||((_i)>(((T127*)(C)->_items)->_upper)))) { _ei=rT127item((T127*)(C)->_items,_i); /*IF*/if (rT124affect((T124*)_ei,a1)) { R=((T124*)_ei)->_clients; } else { _i=(_i)+(1); } /*FI*/} return R; } void rT122make(T122 *C,T0* a1,T0* a2){ C->_start_position=a1; C->_items=a2; } int rT124for_all(T124 *C){ int R=0; R=!((C)->_list); return R; } int rT124affect(T124 *C,T0* a1){ int R=0; /*IF*/if (rT124for_all(C)) { R=1; } else { R=rT128has((T128*)(C)->_list,a1); } /*FI*/return R; } void rT124make_all(T124 *C,T0* a1){ C->_clients=a1; C->_list=NULL; } void rT124make(T124 *C,T0* a1,T0* a2){ C->_clients=a1; {T128 *n=((T128*)se_new(128)); rT128make(n,a2); C->_list=(T0 *)n;} } T0* rT225to_runnable(T225 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_run_compound)) { C->_run_compound=a1; R=(T0 *)C; } else if (((T0 *)(C)->_run_compound)==((T0 *)a1)) { R=(T0 *)C; } else { {T225 *n=((T225*)se_new(225)); /*(IRF3*/((n)->_start_position)=((C)->_start_position); /*)*/R=(T0 *)n;} R=rT225to_runnable((T225*)R,a1); } /*FI*/return R; } void rT225error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT225add_comment(T225 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T217 *n=((T217*)se_new(217)); rT217make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } void rT225compile_to_c(T225 *C){ rT225error((C)->_start_position,(T0 *)ms1314); } void rT46show(T46 *C){ T0* _the_line=NULL; T0* _str=NULL; T0* _n=NULL; int _nb=0; int _c=0; _n=((T48*)(C)->_base_class_name)->_to_string; rT37put_string((T37*)oRBC1std_error,(T0 *)ms39); rT37put_integer((T37*)oRBC1std_error,(C)->_line); rT37put_string((T37*)oRBC1std_error,(T0 *)ms41); rT37put_integer((T37*)oRBC1std_error,(C)->_column); rT37put_string((T37*)oRBC1std_error,(T0 *)ms42); rT37put_string((T37*)oRBC1std_error,_n); _str=rT46path(C); /*IF*/if (((int)_str)) { rT37put_string((T37*)oRBC1std_error,(T0 *)ms424); rT37put_string((T37*)oRBC1std_error,_str); rT37put_character((T37*)oRBC1std_error,'\51'); } /*FI*/rT37put_string((T37*)oRBC1std_error,(T0 *)ms425); /*IF*/if ((/*(IRF4*/((T51*)oRBC27eiffel_parser)->_is_running/*)*/)&&(rT7is_equal((T7*)((T48*)rT51current_class_name((T51*)oRBC27eiffel_parser))->_to_string,_n))) { _the_line=((/*UT*/(void)(T60*)oRBC51text), rT60item((C)->_line)); } else if (((int)rT46path(C))) { rT60read((T60*)oRBC51text,((T50*)rT46base_class(C))->_path); _the_line=((/*UT*/(void)(T60*)oRBC51text), rT60item((C)->_line)); } /*FI*//*IF*/if (((int)_the_line)) { _c=(C)->_column; rT37put_string((T37*)oRBC1std_error,_the_line); rT37put_new_line((T37*)oRBC1std_error); _nb=1; while (!((_nb)==(_c))) { /*IF*/if ((rT7item((T7*)_the_line,_nb))==('\11')) { rT37put_character((T37*)oRBC1std_error,'\11'); } else { rT37put_character((T37*)oRBC1std_error,'\40'); } /*FI*/_nb=(_nb)+(1); } rT37put_string((T37*)oRBC1std_error,(T0 *)ms426); } else { rT37put_string((T37*)oRBC1std_error,(T0 *)ms427); rT37put_string((T37*)oRBC1std_error,_n); rT37put_string((T37*)oRBC1std_error,(T0 *)ms428); } /*FI*/} void rT46fatal_error(/*C*/T0* a1){ (/*UT*/(void)(T45*)oRBC27eh); rT45fatal_error(a1); } T0* rT46path(T46 *C){ T0* R=NULL; T0* _bc=NULL; /*IF*/if (/*(IRF4*/((T51*)oRBC27eiffel_parser)->_is_running/*)*/) { /*IF*/if (((/*UT*/(void)(T52*)oRBC27small_eiffel), rT52is_used(((T48*)(C)->_base_class_name)->_to_string))) { _bc=rT48base_class((T48*)(C)->_base_class_name); } /*FI*/} else { _bc=rT48base_class((T48*)(C)->_base_class_name); } /*FI*//*IF*/if (((int)_bc)) { R=((T50*)_bc)->_path; } /*FI*/return R; } int rT46is_equal(T46 *C,T0* a1){ int R=0; R=((((((C)->_line)==(((T46*)a1)->_line))&&(((C)->_column)==(((T46*)a1)->_column)))&&(((int)(C)->_base_class_name)))&&(((int)((T46*)a1)->_base_class_name)))&&(((T0 *)((T48*)(C)->_base_class_name)->_to_string)==((T0 *)((T48*)((T46*)a1)->_base_class_name)->_to_string)); return R; } T0* rT46to_err_msg(T46 *C){ T0* R=NULL; {T7 *n=((T7*)se_new(7)); rT7copy(n,(T0 *)ms459); R=(T0 *)n;} rT7append((T7*)R,rT2to_string((C)->_line)); rT7append((T7*)R,(T0 *)ms460); rT7append((T7*)R,rT2to_string((C)->_column)); /*IF*/if (((int)(C)->_base_class_name)) { rT7append((T7*)R,(T0 *)ms461); rT7append((T7*)R,rT48to_err_msg((T48*)(C)->_base_class_name)); } /*FI*/return R; } T0* rT46base_class(T46 *C){ T0* R=NULL; /*IF*/if (/*(IRF4*/((T51*)oRBC27eiffel_parser)->_is_running/*)*/) { /*IF*/if (rT7empty((T7*)((T48*)(C)->_base_class_name)->_to_string)) { rT46fatal_error((T0 *)ms412); } else if (((/*UT*/(void)(T52*)oRBC27small_eiffel), rT52is_used(((T48*)(C)->_base_class_name)->_to_string))) { R=rT48base_class((T48*)(C)->_base_class_name); } else { rT46fatal_error((T0 *)ms413); } /*FI*/} else { R=rT48base_class((T48*)(C)->_base_class_name); } /*FI*/return R; } void rT46with(T46 *C,int a1,int a2,T0* a3){ C->_line=a1; C->_column=a2; C->_base_class_name=a3; } void rT46make(T46 *C,int a1,int a2){ C->_line=a1; C->_column=a2; C->_base_class_name=rT51current_class_name((T51*)oRBC27eiffel_parser); } T0*oRBC27eiffel_parser; void rT37put_integer(T37 *C,int a1){ /*(IRF3*/(((T7*)oRBC38tmp_string)->_count)=(0); /*)*/rT2append_in(a1,oRBC38tmp_string); rT37put_string(C,oRBC38tmp_string); } T0*oRBC38tmp_string; void rT37put_new_line(T37 *C){ rT37put_character(C,'\12'); } void rT37die_with_code(/*C*/int a1){ exit(a1); } void rT37put_string(T37 *C,T0* a1){ int _i=0; _i=1; while (!((_i)>(((T7*)a1)->_count))) { rT37put_character(C,rT7item((T7*)a1,_i)); _i=(_i)+(1); } } int rT37is_connected(T37 *C){ int R=0; R=((int)(C)->_path); return R; } void rT37disconnect(T37 *C){ int _err=0; _err=fclose((C)->_output_stream); C->_path=NULL; C->_output_stream=stderr; } void rT37connect_to(T37 *C,T0* a1){ C->_mode=(T0 *)ms523; C->_output_stream=rT37fopen(a1,(C)->_mode); /*IF*/{/*AT*/C->_path=a1; } /*FI*/} void * rT37fopen(/*C*/T0* a1,T0* a2){ void * R=0; void * _pm=0; void * _pf=0; _pf=rT7to_external((T7*)a1); _pm=rT7to_external((T7*)a2); R=(void*)fopen(((char*)_pf),((char*)_pm)); return R; } void rT37put_character(T37 *C,char a1){ char _err=0; _err=fputc(a1,(C)->_output_stream); /*IF*/if ((_err)!=(a1)) { rT37put_string((T37*)oRBC1std_error,(T0 *)ms5); /*(IRF3*/rsp(); rT37die_with_code(1); /*)*/} /*FI*/} void rT37make(T37 *C){ C->_output_stream=stderr; } void rT38put_integer(T38 *C,int a1){ /*(IRF3*/(((T7*)oRBC38tmp_string)->_count)=(0); /*)*/rT2append_in(a1,oRBC38tmp_string); rT38put_string(C,oRBC38tmp_string); } void rT38die_with_code(/*C*/int a1){ exit(a1); } void rT38put_string(T38 *C,T0* a1){ int _i=0; _i=1; while (!((_i)>(((T7*)a1)->_count))) { rT38put_character(C,rT7item((T7*)a1,_i)); _i=(_i)+(1); } } int rT38is_connected(T38 *C){ int R=0; R=((int)(C)->_path); return R; } void rT38disconnect(T38 *C){ int _err=0; _err=fclose((C)->_output_stream); C->_path=NULL; } void rT38connect_to(T38 *C,T0* a1){ C->_mode=(T0 *)ms523; C->_output_stream=rT38fopen(a1,(C)->_mode); /*IF*/{/*AT*/C->_path=a1; } /*FI*/} void * rT38fopen(/*C*/T0* a1,T0* a2){ void * R=0; void * _pm=0; void * _pf=0; _pf=rT7to_external((T7*)a1); _pm=rT7to_external((T7*)a2); R=(void*)fopen(((char*)_pf),((char*)_pm)); return R; } void rT38put_character(T38 *C,char a1){ char _err=0; _err=fputc(a1,(C)->_output_stream); /*IF*/if ((_err)!=(a1)) { rT37put_string((T37*)oRBC1std_error,(T0 *)ms5); /*(IRF3*/rsp(); rT38die_with_code(1); /*)*/} /*FI*/} T0* rT217to_runnable(T217 *C,T0* a1){ T0* R=NULL; T0* _ri=NULL; /*IF*/if (!((C)->_run_compound)) { C->_run_compound=a1; _ri=XrT177to_runnable((C)->_instruction,a1); /*IF*/if (!(_ri)) { rT217error(XrT177start_position((C)->_instruction),(T0 *)ms1255); } else { C->_instruction=_ri; R=(T0 *)C; } /*FI*/} else { {T217 *n=((T217*)se_new(217)); rT217make(n,(C)->_instruction,(C)->_comment); R=(T0 *)n;} R=rT217to_runnable((T217*)R,a1); } /*FI*/return R; } void rT217error(/*C*/T0* a1,T0* a2){ (/*UT*/(void)(T45*)oRBC27eh); rT45add_position(a1); rT45error((T45*)oRBC27eh,a2); } T0* rT217add_comment(/*C*/T0* a1){ T0* R=NULL; return R; } T0* rT217start_position(T217 *C){ T0* R=NULL; R=XrT177start_position((C)->_instruction); return R; } int rT217use_current(T217 *C){ int R=0; R=XrT177use_current((C)->_instruction); return R; } void rT217compile_to_c(T217 *C){ XrT177compile_to_c((C)->_instruction); } void rT217make(T217 *C,T0* a1,T0* a2){ C->_instruction=a1; C->_comment=a2; } int rT42feof(T42 *C,void * a1){ int R=0; R=feof((FILE*)C->_input_stream); return R; } int rT42end_of_input(T42 *C){ int R=0; R=rT42feof(C,(C)->_input_stream); return R; } int rT42is_connected(T42 *C){ int R=0; R=((int)(C)->_path); return R; } void rT42disconnect(T42 *C){ int _err=0; _err=fclose((C)->_input_stream); C->_path=NULL; } T0*oRBC42last_string; char rT42last_character(T42 *C){ char R=0; R=(C)->_last_character_memory; return R; } void rT42connect_to(T42 *C,T0* a1){ /*(IRF3*/((C)->_mode)=((T0 *)ms25); /*)*/C->_input_stream=rT42fopen(a1,(C)->_mode); /*IF*/{/*AT*/C->_path=a1; } /*FI*/} void rT42skip_separators(T42 *C){ while (!((rT42end_of_input(C))||(!(rT3is_separator(rT42last_character(C)))))) { rT42read_character(C); } } void * rT42fopen(/*C*/T0* a1,T0* a2){ void * R=0; void * _pm=0; void * _pf=0; _pf=rT7to_external((T7*)a1); _pm=rT7to_external((T7*)a2); R=(void*)fopen(((char*)_pf),((char*)_pm)); return R; } void rT42read_word(T42 *C){ rT42skip_separators(C); /*(IRF3*/(((T7*)oRBC42last_string)->_count)=(0); /*)*/while (!((rT42end_of_input(C))||(rT3is_separator(rT42last_character(C))))) { rT7extend((T7*)oRBC42last_string,rT42last_character(C)); rT42read_character(C); } } void rT42read_line_in(T42 *C,T0* a1){ /*(IRF3*/(((T7*)a1)->_count)=(0); /*)*/rT42read_character(C); while (!((rT42end_of_input(C))||((rT42last_character(C))==('\12')))) { rT7extend((T7*)a1,rT42last_character(C)); rT42read_character(C); } } void rT42read_line(T42 *C){ rT42read_line_in(C,oRBC42last_string); } void rT42read_character(T42 *C){ C->_last_character_memory=fgetc((C)->_input_stream); } T0* rT7twin(T7 *C){ T0* R=NULL; /*IF*//*AF*//*AE*/ R=(T0 *)se_new(C->id); AF_1 rT7copy((T7*)R,(T0 *)C); AF_0 /*FI*/return R; } int rT7hash_code(T7 *C){ int R=0; int _i=0; _i=(C)->_count; /*IF*/if ((_i)>(5)) { _i=5; } /*FI*/while (!((_i)==(0))) { R=(R)+(((unsigned char)rT7item(C,_i))); _i=(_i)-(1); } return R; } void rT7reverse(T7 *C){ int _i2=0; int _i1=0; _i1=1; _i2=(C)->_count; while (!((_i1)>=(_i2))) { rT7swap(C,_i1,_i2); _i1=(_i1)+(1); _i2=(_i2)-(1); } } void rT7extend(T7 *C,char a1){ /*IF*/if (((C)->_capacity)>((C)->_count)) { } else if (((C)->_capacity)==(0)) { C->_capacity=32; C->_storage=rT7malloc((C)->_capacity); } else { C->_capacity=((C)->_capacity)+(32); C->_storage=rT7realloc((C)->_storage,(C)->_capacity); } /*FI*/C->_count=((C)->_count)+(1); rT7put(C,a1,(C)->_count); } int rT7same_as(T7 *C,T0* a1){ int R=0; int _i=0; /*IF*/if (((T0 *)a1)==((T0 *)C)) { R=1; } else { /*IF*/if ((((T7*)a1)->_count)!=((C)->_count)) { } else { _i=(C)->_count; while (!(((_i)==(0))||(!(rT3same_as(rT7item(C,_i),rT7item((T7*)a1,_i)))))) { _i=(_i)-(1); } R=(_i)==(0); } /*FI*/} /*FI*/return R; } void rT7to_upper(T7 *C){ int _i=0; _i=(C)->_count; while (!((_i)==(0))) { rT7put(C,rT3to_upper(rT7item(C,_i)),_i); _i=(_i)-(1); } } char rT7first(T7 *C){ char R=0; R=rT7item(C,1); return R; } void rT7remove_between(T7 *C,int a1,int a2){ int _i=0; _i=a2; while (!((_i)>=((C)->_count))) { rT7put(C,rT7item(C,(_i)+(1)),((a1)+(_i))-(a2)); _i=(_i)+(1); } C->_count=((C)->_count)-(((a2)-(a1))+(1)); } void rT7remove_first(T7 *C,int a1){ /*IF*/if ((a1)>(0)) { rT7remove_between(C,1,a1); } /*FI*/} void rT7remove_last(T7 *C,int a1){ C->_count=((C)->_count)-(a1); } int rT7has_prefix(T7 *C,T0* a1){ int R=0; int _i=0; /*IF*/if ((((T7*)a1)->_count)<=((C)->_count)) { _i=((T7*)a1)->_count; while (!(((_i)==(0))||((rT7item(C,_i))!=(rT7item((T7*)a1,_i))))) { _i=(_i)-(1); } R=(_i)==(0); } /*FI*/return R; } int rT7has_suffix(T7 *C,T0* a1){ int R=0; int _i2=0; int _i1=0; /*IF*/if ((((T7*)a1)->_count)<=((C)->_count)) { _i1=(((C)->_count)-(((T7*)a1)->_count))+(1); _i2=1; while (!((((_i1)>((C)->_count))||((_i2)>(((T7*)a1)->_count)))||((rT7item(C,_i1))!=(rT7item((T7*)a1,_i2))))) { _i1=(_i1)+(1); _i2=(_i2)+(1); } R=(_i1)>((C)->_count); } /*FI*/return R; } void rT7precede(T7 *C,char a1){ int _i=0; rT7extend(C,'\40'); _i=(C)->_count; while (!((_i)==(1))) { rT7put(C,rT7item(C,(_i)-(1)),_i); _i=(_i)-(1); } rT7put(C,a1,1); } int rT7empty(T7 *C){ int R=0; R=((C)->_count)==(0); return R; } char rT7item(T7 *C,int a1){ char R=0; /*IF*//*AF*//*AE*/ /*FI*/R=(C->_storage)[a1-1]; return R; } char * rT7realloc(/*C*/char * a1,int a2){ char * R=0; R=(char*)realloc(a1,(size_t)a2); return R; } T0* rT7substring(T7 *C,int a1,int a2){ T0* R=NULL; int _i=0; {T7 *n=((T7*)se_new(7)); rT7make(n,((a2)-(a1))+(1)); R=(T0 *)n;} _i=a1; while (!((_i)>(a2))) { rT7extend((T7*)R,rT7item(C,_i)); _i=(_i)+(1); } return R; } int rT7is_equal(T7 *C,T0* a1){ int R=0; int _i=0; /*IF*/if (((T0 *)C)==((T0 *)a1)) { R=1; } else { _i=(C)->_count; R=(_i)==(((T7*)a1)->_count); while (!(((!(R))||((_i)==(0))))) { R=(rT7item(C,_i))==(rT7item((T7*)a1,_i)); _i=(_i)-(1); } } /*FI*/return R; } void rT7append(T7 *C,T0* a1){ int _i=0; _i=1; while (!((_i)>(((T7*)a1)->_count))) { rT7extend(C,rT7item((T7*)a1,_i)); _i=(_i)+(1); } } char rT7last(T7 *C){ char R=0; R=rT7item(C,(C)->_count); return R; } char * rT7malloc(/*C*/int a1){ char * R=0; R=(char*)malloc((size_t)a1); return R; } int rT7index_of(T7 *C,char a1){ int R=0; R=1; while (!(((R)>((C)->_count))||((a1)==(rT7item(C,R))))) { R=(R)+(1); } return R; } int rT7to_integer(T7 *C){ int R=0; int _minus=0; char _cc=0; int _state=0; int _i=0; _i=1; while (!(((_i)>((C)->_count))||((_state)==(4)))) { _cc=rT7item(C,_i); {int iv1=_state; if (0 == iv1) goto l31; goto l32; l31: ; /*IF*/if (rT3is_separator(_cc)) { } else if ((_cc)==('\53')) { _state=1; } else if ((_cc)==('\55')) { _minus=1; _state=1; } else if (rT3is_digit(_cc)) { R=rT3value(_cc); _state=2; } else { _state=4; } /*FI*/goto l30; l32: ; if (1 == iv1) goto l33; goto l34; l33: ; /*IF*/if (rT3is_separator(_cc)) { } else if (rT3is_digit(_cc)) { R=rT3value(_cc); _state=2; } else { _state=4; } /*FI*/goto l30; l34: ; if (2 == iv1) goto l35; goto l36; l35: ; /*IF*/if (rT3is_digit(_cc)) { R=((R)*(10))+(rT3value(_cc)); } else if (rT3is_separator(_cc)) { _state=3; } else { _state=4; } /*FI*/goto l30; l36: ; /*IF*/if (rT3is_separator(_cc)) { } else { _state=4; } /*FI*/ l30: ; } _i=(_i)+(1); } /*IF*/if ((_state)==(4)) { rT37put_string((T37*)oRBC1std_error,(T0 *)ms879); rT37put_string((T37*)oRBC1std_error,(T0 *)C); rT37put_string((T37*)oRBC1std_error,(T0 *)ms880); } else if (_minus) { R=-(R); } /*FI*/return R; } void rT7put(T7 *C,char a1,int a2){ /*IF*//*AF*//*AE*/ /*FI*/(C->_storage)[a2-1]=a1; } void rT7swap(T7 *C,int a1,int a2){ char _tmp=0; _tmp=rT7item(C,a1); rT7put(C,rT7item(C,a2),a1); rT7put(C,_tmp,a2); }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.