This is compile_to_c23.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" /*DICTIONARY[E_FEATURE,STRING]*/void rT65resize(T65 *C,int a1){ int _p=0; int _n=0; int _i=0; T0* _new_buc=NULL; int _hash=0; {T58 *n=((T58*)se_new(58)); rT58make(n,a1); _new_buc=(T0 *)n;} _i=0; while (!((_i)>=((C)->_modulus))) { _n=rT58item((T58*)(C)->_buckets,_i); while (!((_n)==(0))) { _p=rT59item((T59*)(C)->_chain,_n); _hash=(rT7hash_code((T7*)rT45item((T45*)(C)->_keys,_n)))%(a1); rT59put((T59*)(C)->_chain,rT58item((T58*)_new_buc,_hash),_n); rT58put((T58*)_new_buc,_n,_hash); _n=_p; } _i=(_i)+(1); } C->_buckets=_new_buc; C->_modulus=a1; C->_item_mem=0; }/*DICTIONARY[E_FEATURE,STRING]*/T0* rT65at(T65 *C,T0* a1){ T0* R=NULL; int _foo=0; _foo=rT65has(C,a1); R=rT67item((T67*)(C)->_store,(C)->_has_mem); return R; } /*DICTIONARY[E_FEATURE,STRING]*/void rT65put(T65 *C,T0* a1,T0* a2){ int _hash=0; _hash=(rT7hash_code((T7*)a2))%((C)->_modulus); /*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a2,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT58item((T58*)(C)->_buckets,_hash); while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a2,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT59item((T59*)(C)->_chain,(C)->_has_mem); } /*IF*/if (((C)->_has_mem)==(0)) { /*IF*/if (((C)->_count)>=(rT67count((T67*)(C)->_store))) { rT65expand(C); } /*FI*/rT45put((T45*)(C)->_keys,a2,(C)->_free); rT67put((T67*)(C)->_store,a1,(C)->_free); C->_has_mem=(C)->_free; C->_free=rT59item((T59*)(C)->_chain,(C)->_free); rT59put((T59*)(C)->_chain,rT58item((T58*)(C)->_buckets,_hash),(C)->_has_mem); rT58put((T58*)(C)->_buckets,(C)->_has_mem,_hash); C->_count=((C)->_count)+(1); /*IF*/if (((C)->_count)>(((C)->_modulus)*(2))) { rT65resize(C,(2)*((C)->_modulus)); } /*FI*/} /*FI*/} else { rT67put((T67*)(C)->_store,a1,(C)->_has_mem); } /*FI*/C->_item_mem=0; }/*DICTIONARY[E_FEATURE,STRING]*/void rT65expand(T65 *C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=rT67count((T67*)(C)->_store); rT59resize((T59*)(C)->_chain,1,(2)*(_old_size)); rT45resize((T45*)(C)->_keys,1,(2)*(_old_size)); rT67resize((T67*)(C)->_store,1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(rT59count((T59*)(C)->_chain)))) { rT59put((T59*)(C)->_chain,(_i)+(1),_i); _i=(_i)+(1); } rT59put((T59*)(C)->_chain,(C)->_free,_i); C->_free=(_old_size)+(1); }/*DICTIONARY[E_FEATURE,STRING]*/int rT65has(T65 *C,T0* a1){ int R=0; /*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a1,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT58item((T58*)(C)->_buckets,(rT7hash_code((T7*)a1))%((C)->_modulus)); while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a1,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT59item((T59*)(C)->_chain,(C)->_has_mem); } } /*FI*/R=((C)->_has_mem)!=(0); return R; } /*DICTIONARY[E_FEATURE,STRING]*/void rT65make(T65 *C){ int _i=0; C->_modulus=32; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; {T58 *n=((T58*)se_new(58)); rT58make(n,(C)->_modulus); C->_buckets=(T0 *)n;} {T59 *n=((T59*)se_new(59)); rT59make(n,1,16); C->_chain=(T0 *)n;} {T67 *n=((T67*)se_new(67)); rT67make(n,1,16); C->_store=(T0 *)n;} {T45 *n=((T45*)se_new(45)); rT45make(n,1,16); C->_keys=(T0 *)n;} _i=1; while (!((_i)==(rT59count((T59*)(C)->_chain)))) { rT59put((T59*)(C)->_chain,(_i)+(1),_i); _i=(_i)+(1); } rT59put((T59*)(C)->_chain,0,_i); _i=0; while (!((_i)>=((C)->_modulus))) { rT58put((T58*)(C)->_buckets,0,_i); _i=(_i)+(1); } }/*DICTIONARY[STRING,STRING]*/void rT61resize(T61 *C,int a1){ int _p=0; int _n=0; int _i=0; T0* _new_buc=NULL; int _hash=0; {T58 *n=((T58*)se_new(58)); rT58make(n,a1); _new_buc=(T0 *)n;} _i=0; while (!((_i)>=((C)->_modulus))) { _n=rT58item((T58*)(C)->_buckets,_i); while (!((_n)==(0))) { _p=rT59item((T59*)(C)->_chain,_n); _hash=(rT7hash_code((T7*)rT45item((T45*)(C)->_keys,_n)))%(a1); rT59put((T59*)(C)->_chain,rT58item((T58*)_new_buc,_hash),_n); rT58put((T58*)_new_buc,_n,_hash); _n=_p; } _i=(_i)+(1); } C->_buckets=_new_buc; C->_modulus=a1; C->_item_mem=0; }/*DICTIONARY[STRING,STRING]*/T0* rT61at(T61 *C,T0* a1){ T0* R=NULL; int _foo=0; _foo=rT61has(C,a1); R=rT45item((T45*)(C)->_store,(C)->_has_mem); return R; } /*DICTIONARY[STRING,STRING]*/void rT61put(T61 *C,T0* a1,T0* a2){ int _hash=0; _hash=(rT7hash_code((T7*)a2))%((C)->_modulus); /*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a2,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT58item((T58*)(C)->_buckets,_hash); while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a2,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT59item((T59*)(C)->_chain,(C)->_has_mem); } /*IF*/if (((C)->_has_mem)==(0)) { /*IF*/if (((C)->_count)>=(rT45count((T45*)(C)->_store))) { rT61expand(C); } /*FI*/rT45put((T45*)(C)->_keys,a2,(C)->_free); rT45put((T45*)(C)->_store,a1,(C)->_free); C->_has_mem=(C)->_free; C->_free=rT59item((T59*)(C)->_chain,(C)->_free); rT59put((T59*)(C)->_chain,rT58item((T58*)(C)->_buckets,_hash),(C)->_has_mem); rT58put((T58*)(C)->_buckets,(C)->_has_mem,_hash); C->_count=((C)->_count)+(1); /*IF*/if (((C)->_count)>(((C)->_modulus)*(2))) { rT61resize(C,(2)*((C)->_modulus)); } /*FI*/} /*FI*/} else { rT45put((T45*)(C)->_store,a1,(C)->_has_mem); } /*FI*/C->_item_mem=0; }/*DICTIONARY[STRING,STRING]*/void rT61expand(T61 *C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=rT45count((T45*)(C)->_store); rT59resize((T59*)(C)->_chain,1,(2)*(_old_size)); rT45resize((T45*)(C)->_keys,1,(2)*(_old_size)); rT45resize((T45*)(C)->_store,1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(rT59count((T59*)(C)->_chain)))) { rT59put((T59*)(C)->_chain,(_i)+(1),_i); _i=(_i)+(1); } rT59put((T59*)(C)->_chain,(C)->_free,_i); C->_free=(_old_size)+(1); }/*DICTIONARY[STRING,STRING]*/int rT61has(T61 *C,T0* a1){ int R=0; /*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a1,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT58item((T58*)(C)->_buckets,(rT7hash_code((T7*)a1))%((C)->_modulus)); while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a1,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT59item((T59*)(C)->_chain,(C)->_has_mem); } } /*FI*/R=((C)->_has_mem)!=(0); return R; } /*DICTIONARY[STRING,STRING]*/void rT61make(T61 *C){ int _i=0; C->_modulus=32; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; {T58 *n=((T58*)se_new(58)); rT58make(n,(C)->_modulus); C->_buckets=(T0 *)n;} {T59 *n=((T59*)se_new(59)); rT59make(n,1,16); C->_chain=(T0 *)n;} {T45 *n=((T45*)se_new(45)); rT45make(n,1,16); C->_store=(T0 *)n;} {T45 *n=((T45*)se_new(45)); rT45make(n,1,16); C->_keys=(T0 *)n;} _i=1; while (!((_i)==(rT59count((T59*)(C)->_chain)))) { rT59put((T59*)(C)->_chain,(_i)+(1),_i); _i=(_i)+(1); } rT59put((T59*)(C)->_chain,0,_i); _i=0; while (!((_i)>=((C)->_modulus))) { rT58put((T58*)(C)->_buckets,0,_i); _i=(_i)+(1); } }/*DICTIONARY[BASE_CLASS,STRING]*/void rT57forth(T57 *C){ int _i=0; /*IF*/if ((rT59item((T59*)(C)->_chain,(C)->_item_mem_j))!=(0)) { C->_item_mem_j=rT59item((T59*)(C)->_chain,(C)->_item_mem_j); } else { _i=((C)->_item_mem_i)+(1); while (!((rT58item((T58*)(C)->_buckets,_i))!=(0))) { _i=(_i)+(1); } C->_item_mem_i=_i; C->_item_mem_j=rT58item((T58*)(C)->_buckets,_i); } /*FI*/C->_item_mem=((C)->_item_mem)+(1); }/*DICTIONARY[BASE_CLASS,STRING]*/void rT57first(T57 *C){ int _i=0; _i=0; while (!((rT58item((T58*)(C)->_buckets,_i))!=(0))) { _i=(_i)+(1); } C->_item_mem_i=_i; C->_item_mem_j=rT58item((T58*)(C)->_buckets,_i); C->_item_mem=1; }/*DICTIONARY[BASE_CLASS,STRING]*/void rT57resize(T57 *C,int a1){ int _p=0; int _n=0; int _i=0; T0* _new_buc=NULL; int _hash=0; {T58 *n=((T58*)se_new(58)); rT58make(n,a1); _new_buc=(T0 *)n;} _i=0; while (!((_i)>=((C)->_modulus))) { _n=rT58item((T58*)(C)->_buckets,_i); while (!((_n)==(0))) { _p=rT59item((T59*)(C)->_chain,_n); _hash=(rT7hash_code((T7*)rT45item((T45*)(C)->_keys,_n)))%(a1); rT59put((T59*)(C)->_chain,rT58item((T58*)_new_buc,_hash),_n); rT58put((T58*)_new_buc,_n,_hash); _n=_p; } _i=(_i)+(1); } C->_buckets=_new_buc; C->_modulus=a1; C->_item_mem=0; }/*DICTIONARY[BASE_CLASS,STRING]*/T0* rT57item(T57 *C,int a1){ T0* R=NULL; /*IF*/if (((C)->_item_mem)==(0)) { rT57first(C); while (!((a1)==((C)->_item_mem))) { rT57forth(C); } R=rT60item((T60*)(C)->_store,(C)->_item_mem_j); } else if (((C)->_item_mem)<=(a1)) { while (!((a1)==((C)->_item_mem))) { rT57forth(C); } R=rT60item((T60*)(C)->_store,(C)->_item_mem_j); } else { C->_item_mem=0; R=rT57item(C,a1); } /*FI*/return R; } /*DICTIONARY[BASE_CLASS,STRING]*/T0* rT57at(T57 *C,T0* a1){ T0* R=NULL; int _foo=0; _foo=rT57has(C,a1); R=rT60item((T60*)(C)->_store,(C)->_has_mem); return R; } /*DICTIONARY[BASE_CLASS,STRING]*/void rT57put(T57 *C,T0* a1,T0* a2){ int _hash=0; _hash=(rT7hash_code((T7*)a2))%((C)->_modulus); /*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a2,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT58item((T58*)(C)->_buckets,_hash); while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a2,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT59item((T59*)(C)->_chain,(C)->_has_mem); } /*IF*/if (((C)->_has_mem)==(0)) { /*IF*/if (((C)->_count)>=(rT60count((T60*)(C)->_store))) { rT57expand(C); } /*FI*/rT45put((T45*)(C)->_keys,a2,(C)->_free); rT60put((T60*)(C)->_store,a1,(C)->_free); C->_has_mem=(C)->_free; C->_free=rT59item((T59*)(C)->_chain,(C)->_free); rT59put((T59*)(C)->_chain,rT58item((T58*)(C)->_buckets,_hash),(C)->_has_mem); rT58put((T58*)(C)->_buckets,(C)->_has_mem,_hash); C->_count=((C)->_count)+(1); /*IF*/if (((C)->_count)>(((C)->_modulus)*(2))) { rT57resize(C,(2)*((C)->_modulus)); } /*FI*/} /*FI*/} else { rT60put((T60*)(C)->_store,a1,(C)->_has_mem); } /*FI*/C->_item_mem=0; }/*DICTIONARY[BASE_CLASS,STRING]*/void rT57expand(T57 *C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=rT60count((T60*)(C)->_store); rT59resize((T59*)(C)->_chain,1,(2)*(_old_size)); rT45resize((T45*)(C)->_keys,1,(2)*(_old_size)); rT60resize((T60*)(C)->_store,1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(rT59count((T59*)(C)->_chain)))) { rT59put((T59*)(C)->_chain,(_i)+(1),_i); _i=(_i)+(1); } rT59put((T59*)(C)->_chain,(C)->_free,_i); C->_free=(_old_size)+(1); }/*DICTIONARY[BASE_CLASS,STRING]*/int rT57has(T57 *C,T0* a1){ int R=0; /*IF*/if ((((C)->_has_mem)==(0))||(!(rT7is_equal((T7*)a1,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT58item((T58*)(C)->_buckets,(rT7hash_code((T7*)a1))%((C)->_modulus)); while (!((((C)->_has_mem)==(0))||(rT7is_equal((T7*)a1,rT45item((T45*)(C)->_keys,(C)->_has_mem))))) { C->_has_mem=rT59item((T59*)(C)->_chain,(C)->_has_mem); } } /*FI*/R=((C)->_has_mem)!=(0); return R; } /*DICTIONARY[BASE_CLASS,STRING]*/void rT57make(T57 *C){ int _i=0; C->_modulus=32; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; {T58 *n=((T58*)se_new(58)); rT58make(n,(C)->_modulus); C->_buckets=(T0 *)n;} {T59 *n=((T59*)se_new(59)); rT59make(n,1,16); C->_chain=(T0 *)n;} {T60 *n=((T60*)se_new(60)); rT60make(n,1,16); C->_store=(T0 *)n;} {T45 *n=((T45*)se_new(45)); rT45make(n,1,16); C->_keys=(T0 *)n;} _i=1; while (!((_i)==(rT59count((T59*)(C)->_chain)))) { rT59put((T59*)(C)->_chain,(_i)+(1),_i); _i=(_i)+(1); } rT59put((T59*)(C)->_chain,0,_i); _i=0; while (!((_i)>=((C)->_modulus))) { rT58put((T58*)(C)->_buckets,0,_i); _i=(_i)+(1); } }/*CREATION_CALL_4*/T0* rT255current_type(T255 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*CREATION_CALL_4*/void rT255fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*CREATION_CALL_4*/T0* rT255to_runnable(T255 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_run_compound)) { rT255check_writable(C,a1); rT255check_explicit_type(C); rT255check_created_type(C,(C)->_type); rT255check_creation_clause(C,(C)->_type); R=(T0 *)C; } else { {T255 *n=((T255*)se_new(255)); rT255make(n,(C)->_start_position,(C)->_type,(C)->_writable,(C)->_call); R=(T0 *)n;} R=rT255to_runnable((T255*)R,a1); } /*FI*/return R; } /*CREATION_CALL_4*/void rT255error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*CREATION_CALL_4*/T0* rT255add_comment(T255 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*CREATION_CALL_4*/int rT255use_current(T255 *C){ int R=0; /*IF*/if (((int)(C)->_run_args)) { R=rT175use_current((T175*)(C)->_run_args); } /*FI*/R=(R)||(XrT72use_current((C)->_writable)); return R; } /*CREATION_CALL_4*/void rT255cp_not_found(T255 *C,T0* a1){ rT48add_position(/*XrT*FEATURE_NAME*/((T70*)/*XrT*PROC_CALL*/((T183*)(C)->_call)->_feature_name)->_start_position); rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position); rT255fatal_error((T0 *)ms5_254); }/*CREATION_CALL_4*/void rT255compile_to_c(T255 *C){ int _id=0; _id=XrT62id((C)->_type); rT44rs_push_position((T44*)oRBC27cpp,'5',(C)->_start_position); rT44put_string((T44*)oRBC27cpp,(T0 *)ms1_255); rT44put_integer((T44*)oRBC27cpp,_id); rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_255); rT44put_new_id((T44*)oRBC27cpp,_id); rT44put_string((T44*)oRBC27cpp,(T0 *)ms3_255); rT44expanded_attributes((T44*)oRBC27cpp,(T0 *)ms4_255,NULL,(C)->_type); rT44push_new((T44*)oRBC27cpp,(C)->_run_feature,(C)->_run_args); XrT268mapping_c((C)->_run_feature); rT44pop((T44*)oRBC27cpp); XrT72compile_to_c((C)->_writable); rT44put_string((T44*)oRBC27cpp,(T0 *)ms5_255); rT255call_invariant(C,(C)->_type); rT44rs_pop_position((T44*)oRBC27cpp); }/*CREATION_CALL_4*/void rT255call_invariant(T255 *C,T0* a1){ /*IF*/if (rT44call_invariant_start((T44*)oRBC27cpp,a1)) { XrT62mapping_cast(a1); XrT72compile_to_c((C)->_writable); rT44call_invariant_end((T44*)oRBC27cpp); rT44put_character((T44*)oRBC27cpp,'\73'); } /*FI*/}/*CREATION_CALL_4*/int rT255arg_count(T255 *C){ int R=0; /*IF*/if (((int)(C)->_call)) { R=XrT182arg_count((C)->_call); } /*FI*/return R; } T0*oRBC254make_precomputable; /*CREATION_CALL_4*/int rT255is_pre_computable(T255 *C){ int R=0; T0* _rfctbcn=NULL; T0* _rfn=NULL; T0* _rfct=NULL; int _i=0; /*IF*/if (XrT72is_result((C)->_writable)) { /*IF*/if (!((C)->_run_args)) { R=1; } else { R=1; _i=rT175count((T175*)(C)->_run_args); while (!((!(R))||((_i)==(0)))) { R=XrT72is_pre_computable(rT175expression((T175*)(C)->_run_args,_i)); _i=(_i)-(1); } } /*FI*//*IF*/if (R) { /*IF*/if (XrT268is_pre_computable((C)->_run_feature)) { R=1; } else { _rfct=/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_current_type; _rfctbcn=((T51*)((T53*)XrT62base_class(_rfct))->_base_class_name)->_to_string; _rfn=/*XrT*FEATURE_NAME*/((T70*)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_name)->_to_string; /*IF*/if (rT7is_equal((T7*)(T0 *)ms79_27,_rfn)) { R=rT45has((T45*)oRBC254make_precomputable,_rfctbcn); } else if (rT7is_equal((T7*)(T0 *)ms64_27,_rfn)) { R=((T0 *)(T0 *)ms57_27)==((T0 *)_rfctbcn); } else if (rT7is_equal((T7*)(T0 *)ms94_27,_rfn)) { R=((T0 *)(T0 *)ms37_27)==((T0 *)_rfctbcn); } /*FI*/} /*FI*/} /*FI*/} /*FI*/return R; } /*CREATION_CALL_4*/void rT255check_creation_clause(T255 *C,T0* a1){ T0* _bc=NULL; T0* _fn=NULL; _fn=/*XrT*PROC_CALL*/((T183*)(C)->_call)->_feature_name; /*IF*/if (XrT62is_like_current(a1)) { _bc=rT49base_class((T49*)/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position); _fn=rT53new_name_of((T53*)XrT62base_class(a1),_bc,_fn); } /*FI*/C->_run_feature=rT269get_feature((T269*)XrT62run_class(a1),_fn); /*IF*/if (!((C)->_run_feature)) { rT255cp_not_found(C,_fn); } /*FI*//*IF*/if (!(XrT62has_creation(a1,_fn))) { rT48add_position(/*XrT*FEATURE_NAME*/((T70*)/*XrT*PROC_CALL*/((T183*)(C)->_call)->_feature_name)->_start_position); rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position); rT48append(/*XrT*FEATURE_NAME*/((T70*)_fn)->_to_string); rT48append((T0 *)ms1_254); rT48add_type(a1,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/XrT268add_clients((C)->_run_feature,rT142run_class((T142*)(C)->_run_compound)); /*IF*/if (((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_result_type)) { rT48add_position(XrT268start_position((C)->_run_feature)); rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position); rT255fatal_error((T0 *)ms2_254); } /*FI*//*IF*/if (((rT255arg_count(C))==(0))&&(((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_arguments))) { rT48add_position(XrT268start_position((C)->_run_feature)); rT48add_position((C)->_start_position); rT255fatal_error((T0 *)ms3_254); } /*FI*//*IF*/if ((rT255arg_count(C))>(0)) { C->_run_args=rT175to_runnable((T175*)XrT182arguments((C)->_call),rT255current_type(C)); /*IF*/if (!((C)->_run_args)) { rT255error(rT175start_position((T175*)XrT182arguments((C)->_call)),(T0 *)ms4_254); } else { rT175match_with((T175*)(C)->_run_args,(C)->_run_feature); } /*FI*/} /*FI*/}/*CREATION_CALL_4*/void rT255check_created_type(T255 *C,T0* a1){ T0* _rt=NULL; _rt=XrT62run_type(a1); /*IF*/if (((T53*)XrT62base_class(_rt))->_is_deferred) { rT48add_type(_rt,(T0 *)ms2_250); rT48add_position((C)->_start_position); rT255fatal_error((T0 *)ms3_250); } /*FI*//*IF*/if (XrT62is_expanded(_rt)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms4_250); rT48add_type(a1,(T0 *)ms5_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*//*IF*/if (XrT62is_formal_generic(a1)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms6_250); rT48add_type(a1,(T0 *)ms7_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/rT269set_at_run_time((T269*)XrT62run_class(_rt)); }/*CREATION_CALL_4*/void rT255check_explicit_type(T255 *C){ T0* _t=NULL; _t=XrT62to_runnable((C)->_type,rT255current_type(C)); /*IF*/if ((!(_t))||(!(XrT62is_run_type(_t)))) { rT48add_position(XrT62start_position((C)->_type)); rT255fatal_error((T0 *)ms1_252); } else { C->_type=_t; } /*FI*//*IF*/if (!(XrT62is_a((C)->_type,XrT72result_type((C)->_writable)))) { rT255fatal_error((T0 *)ms2_252); } /*FI*/}/*CREATION_CALL_4*/void rT255check_writable(T255 *C,T0* a1){ T0* _w=NULL; C->_run_compound=a1; _w=XrT72to_runnable((C)->_writable,rT255current_type(C)); /*IF*/if (!(_w)) { rT48add_position(XrT72start_position((C)->_writable)); rT255fatal_error((T0 *)ms1_250); } else { C->_writable=_w; } /*FI*/}/*CREATION_CALL_4*/void rT255make(T255 *C,T0* a1,T0* a2,T0* a3,T0* a4){ C->_start_position=a1; C->_type=a2; C->_writable=a3; C->_call=a4; }/*CREATION_CALL_3*/T0* rT253current_type(T253 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*CREATION_CALL_3*/void rT253fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*CREATION_CALL_3*/T0* rT253to_runnable(T253 *C,T0* a1){ T0* R=NULL; T0* _t=NULL; /*IF*/if (!((C)->_run_compound)) { rT253check_writable(C,a1); _t=XrT72result_type((C)->_writable); rT253check_created_type(C,_t); rT253check_creation_clause(C,_t); R=(T0 *)C; } else { {T253 *n=((T253*)se_new(253)); rT253make(n,(C)->_start_position,(C)->_writable,(C)->_call); R=(T0 *)n;} R=rT253to_runnable((T253*)R,a1); } /*FI*/return R; } /*CREATION_CALL_3*/void rT253error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*CREATION_CALL_3*/T0* rT253add_comment(T253 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*CREATION_CALL_3*/int rT253use_current(T253 *C){ int R=0; /*IF*/if (((int)(C)->_run_args)) { R=rT175use_current((T175*)(C)->_run_args); } /*FI*/R=(R)||(XrT72use_current((C)->_writable)); return R; } /*CREATION_CALL_3*/void rT253cp_not_found(T253 *C,T0* a1){ rT48add_position(/*XrT*FEATURE_NAME*/((T70*)/*XrT*PROC_CALL*/((T183*)(C)->_call)->_feature_name)->_start_position); rT48add_position(/*XrT*FEATURE_NAME*/((T70*)a1)->_start_position); rT253fatal_error((T0 *)ms5_254); }/*CREATION_CALL_3*/void rT253compile_to_c(T253 *C){ int _id=0; T0* _t=NULL; rT44rs_push_position((T44*)oRBC27cpp,'5',(C)->_start_position); _t=XrT62run_type(XrT72result_type((C)->_writable)); _id=XrT62id(_t); rT44put_string((T44*)oRBC27cpp,(T0 *)ms1_253); rT44put_integer((T44*)oRBC27cpp,_id); rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_253); rT44put_new_id((T44*)oRBC27cpp,_id); rT44put_string((T44*)oRBC27cpp,(T0 *)ms3_253); rT44expanded_attributes((T44*)oRBC27cpp,(T0 *)ms4_253,NULL,_t); rT44push_new((T44*)oRBC27cpp,(C)->_run_feature,(C)->_run_args); XrT268mapping_c((C)->_run_feature); rT44pop((T44*)oRBC27cpp); XrT72compile_to_c((C)->_writable); rT44put_string((T44*)oRBC27cpp,(T0 *)ms5_253); rT253call_invariant(C,_t); rT44rs_pop_position((T44*)oRBC27cpp); }/*CREATION_CALL_3*/void rT253call_invariant(T253 *C,T0* a1){ /*IF*/if (rT44call_invariant_start((T44*)oRBC27cpp,a1)) { XrT62mapping_cast(a1); XrT72compile_to_c((C)->_writable); rT44call_invariant_end((T44*)oRBC27cpp); rT44put_character((T44*)oRBC27cpp,'\73'); } /*FI*/}/*CREATION_CALL_3*/int rT253arg_count(T253 *C){ int R=0; /*IF*/if (((int)(C)->_call)) { R=XrT182arg_count((C)->_call); } /*FI*/return R; } /*CREATION_CALL_3*/int rT253is_pre_computable(T253 *C){ int R=0; T0* _rfctbcn=NULL; T0* _rfn=NULL; T0* _rfct=NULL; int _i=0; /*IF*/if (XrT72is_result((C)->_writable)) { /*IF*/if (!((C)->_run_args)) { R=1; } else { R=1; _i=rT175count((T175*)(C)->_run_args); while (!((!(R))||((_i)==(0)))) { R=XrT72is_pre_computable(rT175expression((T175*)(C)->_run_args,_i)); _i=(_i)-(1); } } /*FI*//*IF*/if (R) { /*IF*/if (XrT268is_pre_computable((C)->_run_feature)) { R=1; } else { _rfct=/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_current_type; _rfctbcn=((T51*)((T53*)XrT62base_class(_rfct))->_base_class_name)->_to_string; _rfn=/*XrT*FEATURE_NAME*/((T70*)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_name)->_to_string; /*IF*/if (rT7is_equal((T7*)(T0 *)ms79_27,_rfn)) { R=rT45has((T45*)oRBC254make_precomputable,_rfctbcn); } else if (rT7is_equal((T7*)(T0 *)ms64_27,_rfn)) { R=((T0 *)(T0 *)ms57_27)==((T0 *)_rfctbcn); } else if (rT7is_equal((T7*)(T0 *)ms94_27,_rfn)) { R=((T0 *)(T0 *)ms37_27)==((T0 *)_rfctbcn); } /*FI*/} /*FI*/} /*FI*/} /*FI*/return R; } /*CREATION_CALL_3*/void rT253check_creation_clause(T253 *C,T0* a1){ T0* _bc=NULL; T0* _fn=NULL; _fn=/*XrT*PROC_CALL*/((T183*)(C)->_call)->_feature_name; /*IF*/if (XrT62is_like_current(a1)) { _bc=rT49base_class((T49*)/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position); _fn=rT53new_name_of((T53*)XrT62base_class(a1),_bc,_fn); } /*FI*/C->_run_feature=rT269get_feature((T269*)XrT62run_class(a1),_fn); /*IF*/if (!((C)->_run_feature)) { rT253cp_not_found(C,_fn); } /*FI*//*IF*/if (!(XrT62has_creation(a1,_fn))) { rT48add_position(/*XrT*FEATURE_NAME*/((T70*)/*XrT*PROC_CALL*/((T183*)(C)->_call)->_feature_name)->_start_position); rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position); rT48append(/*XrT*FEATURE_NAME*/((T70*)_fn)->_to_string); rT48append((T0 *)ms1_254); rT48add_type(a1,(T0 *)ms102_27); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/XrT268add_clients((C)->_run_feature,rT142run_class((T142*)(C)->_run_compound)); /*IF*/if (((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_result_type)) { rT48add_position(XrT268start_position((C)->_run_feature)); rT48add_position(/*XrT*FEATURE_NAME*/((T70*)_fn)->_start_position); rT253fatal_error((T0 *)ms2_254); } /*FI*//*IF*/if (((rT253arg_count(C))==(0))&&(((int)/*XrT*RUN_FEATURE*/((T274*)(C)->_run_feature)->_arguments))) { rT48add_position(XrT268start_position((C)->_run_feature)); rT48add_position((C)->_start_position); rT253fatal_error((T0 *)ms3_254); } /*FI*//*IF*/if ((rT253arg_count(C))>(0)) { C->_run_args=rT175to_runnable((T175*)XrT182arguments((C)->_call),rT253current_type(C)); /*IF*/if (!((C)->_run_args)) { rT253error(rT175start_position((T175*)XrT182arguments((C)->_call)),(T0 *)ms4_254); } else { rT175match_with((T175*)(C)->_run_args,(C)->_run_feature); } /*FI*/} /*FI*/}/*CREATION_CALL_3*/void rT253check_created_type(T253 *C,T0* a1){ T0* _rt=NULL; _rt=XrT62run_type(a1); /*IF*/if (((T53*)XrT62base_class(_rt))->_is_deferred) { rT48add_type(_rt,(T0 *)ms2_250); rT48add_position((C)->_start_position); rT253fatal_error((T0 *)ms3_250); } /*FI*//*IF*/if (XrT62is_expanded(_rt)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms4_250); rT48add_type(a1,(T0 *)ms5_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*//*IF*/if (XrT62is_formal_generic(a1)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms6_250); rT48add_type(a1,(T0 *)ms7_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/rT269set_at_run_time((T269*)XrT62run_class(_rt)); }/*CREATION_CALL_3*/void rT253check_writable(T253 *C,T0* a1){ T0* _w=NULL; C->_run_compound=a1; _w=XrT72to_runnable((C)->_writable,rT253current_type(C)); /*IF*/if (!(_w)) { rT48add_position(XrT72start_position((C)->_writable)); rT253fatal_error((T0 *)ms1_250); } else { C->_writable=_w; } /*FI*/}/*CREATION_CALL_3*/void rT253make(T253 *C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_writable=a2; C->_call=a3; }/*CREATION_CALL_2*/T0* rT251current_type(T251 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*CREATION_CALL_2*/void rT251fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*CREATION_CALL_2*/T0* rT251to_runnable(T251 *C,T0* a1){ T0* R=NULL; /*IF*/if (!((C)->_run_compound)) { rT251check_writable(C,a1); rT251check_explicit_type(C); rT251check_created_type(C,(C)->_type); rT251check_creation_clause(C,(C)->_type); R=(T0 *)C; } else { {T251 *n=((T251*)se_new(251)); rT251make(n,(C)->_start_position,(C)->_type,(C)->_writable); R=(T0 *)n;} R=rT251to_runnable((T251*)R,a1); } /*FI*/return R; } /*CREATION_CALL_2*/void rT251error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*CREATION_CALL_2*/T0* rT251add_comment(T251 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*CREATION_CALL_2*/int rT251use_current(T251 *C){ int R=0; R=XrT72use_current((C)->_writable); return R; } /*CREATION_CALL_2*/void rT251compile_to_c(T251 *C){ rT44rs_push_position((T44*)oRBC27cpp,'5',(C)->_start_position); XrT72compile_to_c((C)->_writable); rT44put_string((T44*)oRBC27cpp,(T0 *)ms1_251); rT44put_new((T44*)oRBC27cpp,(C)->_type); rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_251); rT44expanded_attributes((T44*)oRBC27cpp,NULL,(C)->_writable,(C)->_type); rT251call_invariant(C,(C)->_type); rT44rs_pop_position((T44*)oRBC27cpp); }/*CREATION_CALL_2*/void rT251call_invariant(T251 *C,T0* a1){ /*IF*/if (rT44call_invariant_start((T44*)oRBC27cpp,a1)) { XrT62mapping_cast(a1); XrT72compile_to_c((C)->_writable); rT44call_invariant_end((T44*)oRBC27cpp); rT44put_character((T44*)oRBC27cpp,'\73'); } /*FI*/}/*CREATION_CALL_2*/int rT251is_pre_computable(T251 *C){ int R=0; T0* _args=NULL; int _i=0; R=XrT72is_result((C)->_writable); return R; } /*CREATION_CALL_2*/void rT251check_creation_clause(T251 *C,T0* a1){ /*IF*/if (rT53has_creation_clause((T53*)XrT62base_class(a1))) { rT48append((T0 *)ms1_249); rT48add_type(a1,(T0 *)ms2_249); rT251error((C)->_start_position,(T0 *)ms3_249); } /*FI*/}/*CREATION_CALL_2*/void rT251check_created_type(T251 *C,T0* a1){ T0* _rt=NULL; _rt=XrT62run_type(a1); /*IF*/if (((T53*)XrT62base_class(_rt))->_is_deferred) { rT48add_type(_rt,(T0 *)ms2_250); rT48add_position((C)->_start_position); rT251fatal_error((T0 *)ms3_250); } /*FI*//*IF*/if (XrT62is_expanded(_rt)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms4_250); rT48add_type(a1,(T0 *)ms5_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*//*IF*/if (XrT62is_formal_generic(a1)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms6_250); rT48add_type(a1,(T0 *)ms7_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/rT269set_at_run_time((T269*)XrT62run_class(_rt)); }/*CREATION_CALL_2*/void rT251check_explicit_type(T251 *C){ T0* _t=NULL; _t=XrT62to_runnable((C)->_type,rT251current_type(C)); /*IF*/if ((!(_t))||(!(XrT62is_run_type(_t)))) { rT48add_position(XrT62start_position((C)->_type)); rT251fatal_error((T0 *)ms1_252); } else { C->_type=_t; } /*FI*//*IF*/if (!(XrT62is_a((C)->_type,XrT72result_type((C)->_writable)))) { rT251fatal_error((T0 *)ms2_252); } /*FI*/}/*CREATION_CALL_2*/void rT251check_writable(T251 *C,T0* a1){ T0* _w=NULL; C->_run_compound=a1; _w=XrT72to_runnable((C)->_writable,rT251current_type(C)); /*IF*/if (!(_w)) { rT48add_position(XrT72start_position((C)->_writable)); rT251fatal_error((T0 *)ms1_250); } else { C->_writable=_w; } /*FI*/}/*CREATION_CALL_2*/void rT251make(T251 *C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_type=a2; C->_writable=a3; }/*CREATION_CALL_1*/T0* rT248current_type(T248 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_run_compound)) { R=((T142*)(C)->_run_compound)->_current_type; } /*FI*/return R; } /*CREATION_CALL_1*/void rT248fatal_error(/*C*/T0* a1){ rT48fatal_error(a1); }/*CREATION_CALL_1*/T0* rT248to_runnable(T248 *C,T0* a1){ T0* R=NULL; T0* _t=NULL; /*IF*/if (!((C)->_run_compound)) { rT248check_writable(C,a1); _t=XrT72result_type((C)->_writable); rT248check_created_type(C,_t); rT248check_creation_clause(C,_t); R=(T0 *)C; } else { {T248 *n=((T248*)se_new(248)); rT248make(n,(C)->_start_position,(C)->_writable); R=(T0 *)n;} R=rT248to_runnable((T248*)R,a1); } /*FI*/return R; } /*CREATION_CALL_1*/void rT248error(/*C*/T0* a1,T0* a2){ rT48add_position(a1); rT48error((T48*)oRBC27eh,a2); }/*CREATION_CALL_1*/T0* rT248add_comment(T248 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT63count((T63*)a1))==(0))) { R=(T0 *)C; } /*AF*/else { {T224 *n=((T224*)se_new(224)); rT224make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*CREATION_CALL_1*/int rT248use_current(T248 *C){ int R=0; R=XrT72use_current((C)->_writable); return R; } /*CREATION_CALL_1*/void rT248compile_to_c(T248 *C){ T0* _t=NULL; rT44rs_push_position((T44*)oRBC27cpp,'5',(C)->_start_position); _t=XrT62run_type(XrT72result_type((C)->_writable)); XrT72compile_to_c((C)->_writable); rT44put_string((T44*)oRBC27cpp,(T0 *)ms1_248); rT44put_new((T44*)oRBC27cpp,_t); rT44put_string((T44*)oRBC27cpp,(T0 *)ms2_248); rT44expanded_attributes((T44*)oRBC27cpp,NULL,(C)->_writable,_t); rT248call_invariant(C,_t); rT44rs_pop_position((T44*)oRBC27cpp); }/*CREATION_CALL_1*/void rT248call_invariant(T248 *C,T0* a1){ /*IF*/if (rT44call_invariant_start((T44*)oRBC27cpp,a1)) { XrT62mapping_cast(a1); XrT72compile_to_c((C)->_writable); rT44call_invariant_end((T44*)oRBC27cpp); rT44put_character((T44*)oRBC27cpp,'\73'); } /*FI*/}/*CREATION_CALL_1*/int rT248is_pre_computable(T248 *C){ int R=0; T0* _args=NULL; int _i=0; R=XrT72is_result((C)->_writable); return R; } /*CREATION_CALL_1*/void rT248check_creation_clause(T248 *C,T0* a1){ /*IF*/if (rT53has_creation_clause((T53*)XrT62base_class(a1))) { rT48append((T0 *)ms1_249); rT48add_type(a1,(T0 *)ms2_249); rT248error((C)->_start_position,(T0 *)ms3_249); } /*FI*/}/*CREATION_CALL_1*/void rT248check_created_type(T248 *C,T0* a1){ T0* _rt=NULL; _rt=XrT62run_type(a1); /*IF*/if (((T53*)XrT62base_class(_rt))->_is_deferred) { rT48add_type(_rt,(T0 *)ms2_250); rT48add_position((C)->_start_position); rT248fatal_error((T0 *)ms3_250); } /*FI*//*IF*/if (XrT62is_expanded(_rt)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms4_250); rT48add_type(a1,(T0 *)ms5_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*//*IF*/if (XrT62is_formal_generic(a1)) { rT48add_position((C)->_start_position); rT48append((T0 *)ms6_250); rT48add_type(a1,(T0 *)ms7_250); /*[IRF3:print_as_fatal_error*/rT48do_print((T0 *)ms4_48); rT48die_with_code(1); /*]*/ } /*FI*/rT269set_at_run_time((T269*)XrT62run_class(_rt)); }/*CREATION_CALL_1*/void rT248check_writable(T248 *C,T0* a1){ T0* _w=NULL; C->_run_compound=a1; _w=XrT72to_runnable((C)->_writable,rT248current_type(C)); /*IF*/if (!(_w)) { rT48add_position(XrT72start_position((C)->_writable)); rT248fatal_error((T0 *)ms1_250); } else { C->_writable=_w; } /*FI*/}/*CREATION_CALL_1*/void rT248make(T248 *C,T0* a1,T0* a2){ C->_start_position=a1; C->_writable=a2; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.