home *** CD-ROM | disk | FTP | other *** search
Wrap
/* -- ANSI C code generated by : -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.82) -- -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE -- -- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr -- -- http://www.loria.fr/SmallEiffel -- */ #include "compile_to_jvm.h" T0* r199at(T199* C,T0* a1){ T0* R=NULL; int _foo=0; _foo=r199has(C,a1); R=/*X477*/((T0*)r477item(((T477*)((((T199*)C))->_store/*4*/)),(((T199*)C))->_has_mem/*24*/)); return R; } void r199expand(T199* C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=X477count((((T199*)C))->_store/*4*/); r429resize(((T429*)((((T199*)C))->_chain/*12*/)),1,(2)*(_old_size)); r52resize(((T52*)((((T199*)C))->_keys/*0*/)),1,(2)*(_old_size)); X477resize((((T199*)C))->_store/*4*/,1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(r429count(((T429*)((((T199*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T199*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T199*)C))->_chain/*12*/)); int b1=(((T199*)C))->_free/*16*/; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_free=(_old_size)+(1); } /*No:DICTIONARY[RUN_FEATURE,STRING].free*/ void r199make(T199* C){ C->_modulus=(2)*(32); {T226*n=malloc(sizeof(*n)); *n=M226; r226make(n,(((T199*)C))->_modulus/*20*/); C->_buckets=(T0*)n; } {T429*n=malloc(sizeof(*n)); *n=M429; r429make(n,1,32); C->_chain=(T0*)n; } {T477*n=malloc(sizeof(*n)); *n=M477; r477make(n,1,32); C->_store=(T0*)n; } {T52*n=malloc(sizeof(*n)); *n=M52; r52make(n,1,32); C->_keys=(T0*)n; } r199initialize(C); } T0* r199item(T199* C,int a1){ T0* R=NULL; /*IF*/if (((((T199*)C))->_item_mem/*28*/)==(0)) { r199first(C); while (!((a1)==((((T199*)C))->_item_mem/*28*/))) { r199forth(C); } R=/*X477*/((T0*)r477item(((T477*)((((T199*)C))->_store/*4*/)),(((T199*)C))->_item_mem_j/*32*/)); } else if (((((T199*)C))->_item_mem/*28*/)<=(a1)) { while (!((a1)==((((T199*)C))->_item_mem/*28*/))) { r199forth(C); } R=/*X477*/((T0*)r477item(((T477*)((((T199*)C))->_store/*4*/)),(((T199*)C))->_item_mem_j/*32*/)); } else { C->_item_mem=0; R=r199item(C,a1); } /*FI*/return R; } /*No:DICTIONARY[RUN_FEATURE,STRING].item_mem_i*/ void r199resize(T199* C,int a1){ int _p=0; int _n=0; int _i=0; int _hash=0; r226copy(((T226*)(oBC672tmp_buckets)),(((T199*)C))->_buckets/*8*/); r226make(((T226*)((((T199*)C))->_buckets/*8*/)),a1); _i=0; while (!((_i)>=((((T199*)C))->_modulus/*20*/))) { _n=/*(IRF4.6item*/((((T226*)((T226*)(oBC672tmp_buckets))))->_storage/*0*/)[_i]/*)*/; while (!((_n)==(0))) { _p=r429item(((T429*)((((T199*)C))->_chain/*12*/)),_n); _hash=(r7hash_code(((T7*)(r52item(((T52*)((((T199*)C))->_keys/*0*/)),_n)))))%(a1); /*[IRF3.6put*/{T429* C1=((T429*)((((T199*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=_n; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=(_n); /*]*/ _n=_p; } _i=(_i)+(1); } C->_modulus=a1; C->_item_mem=0; } /*No:DICTIONARY[RUN_FEATURE,STRING].item_mem_j*/ /*No:DICTIONARY[RUN_FEATURE,STRING].item_mem*/ /*No:DICTIONARY[RUN_FEATURE,STRING].chain*/ /*No:DICTIONARY[RUN_FEATURE,STRING].buckets*/ /*No:DICTIONARY[RUN_FEATURE,STRING].keys*/ int r199has(T199* C,T0* a1){ int R=0; /*IF*/if ((((((T199*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a1),r52item(((T52*)((((T199*)C))->_keys/*0*/)),(((T199*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[(r7hash_code(((T7*)a1)))%((((T199*)C))->_modulus/*20*/)]/*)*/; while (!((((((T199*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a1),r52item(((T52*)((((T199*)C))->_keys/*0*/)),(((T199*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T199*)C))->_chain/*12*/)),(((T199*)C))->_has_mem/*24*/); } } /*FI*/R=((((T199*)C))->_has_mem/*24*/)!=(0); return R; } /*No:DICTIONARY[RUN_FEATURE,STRING].Min_size*/ void r199forth(T199* C){ int _i=0; /*IF*/if ((r429item(((T429*)((((T199*)C))->_chain/*12*/)),(((T199*)C))->_item_mem_j/*32*/))!=(0)) { C->_item_mem_j=r429item(((T429*)((((T199*)C))->_chain/*12*/)),(((T199*)C))->_item_mem_j/*32*/); } else { _i=((((T199*)C))->_item_mem_i/*36*/)+(1); while (!((/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/)!=(0))) { _i=(_i)+(1); } C->_item_mem_i=_i; C->_item_mem_j=/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/; } /*FI*/C->_item_mem=((((T199*)C))->_item_mem/*28*/)+(1); } /*No:DICTIONARY[RUN_FEATURE,STRING].store*/ void r199with_capacity(T199* C,int a1){ int _i=0; _i=32; while (!((_i)>=(a1))) { _i=(2)*(_i); } C->_modulus=(2)*(_i); {T226*n=malloc(sizeof(*n)); *n=M226; r226make(n,(((T199*)C))->_modulus/*20*/); C->_buckets=(T0*)n; } {T429*n=malloc(sizeof(*n)); *n=M429; r429make(n,1,_i); C->_chain=(T0*)n; } {T477*n=malloc(sizeof(*n)); *n=M477; r477make(n,1,_i); C->_store=(T0*)n; } {T52*n=malloc(sizeof(*n)); *n=M52; r52make(n,1,_i); C->_keys=(T0*)n; } r199initialize(C); } void r199put(T199* C,T0* a1,T0* a2){ int _hash=0; _hash=(r7hash_code(((T7*)a2)))%((((T199*)C))->_modulus/*20*/); /*IF*/if ((((((T199*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a2),r52item(((T52*)((((T199*)C))->_keys/*0*/)),(((T199*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; while (!((((((T199*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a2),r52item(((T52*)((((T199*)C))->_keys/*0*/)),(((T199*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T199*)C))->_chain/*12*/)),(((T199*)C))->_has_mem/*24*/); } /*IF*/if (((((T199*)C))->_has_mem/*24*/)==(0)) { /*IF*/if (((((T199*)C))->_count/*40*/)>=(X477count((((T199*)C))->_store/*4*/))) { r199expand(C); } /*FI*//*[IRF3.6put*/{T52* C1=((T52*)((((T199*)C))->_keys/*0*/)); T0* b1=a2; int b2=(((T199*)C))->_free/*16*/; ((((T52*)C1))->_storage/*0*/)[(b2)-((((T52*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*X477*//*[IRF3.6put*/{T477* C1=((T477*)((((T199*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T199*)C))->_free/*16*/; ((((T477*)C1))->_storage/*4*/)[(b2)-((((T477*)C1))->_lower/*16*/)]=(b1); }/*]*/ C->_has_mem=(((T199*)C))->_free/*16*/; C->_free=r429item(((T429*)((((T199*)C))->_chain/*12*/)),(((T199*)C))->_free/*16*/); /*[IRF3.6put*/{T429* C1=((T429*)((((T199*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=(((T199*)C))->_has_mem/*24*/; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=((((T199*)C))->_has_mem/*24*/); /*]*/ C->_count=((((T199*)C))->_count/*40*/)+(1); /*IF*/if (((((T199*)C))->_count/*40*/)>(((((T199*)C))->_modulus/*20*/)*(2))) { r199resize(C,(2)*((((T199*)C))->_modulus/*20*/)); } /*FI*/} /*FI*/} else { /*X477*//*[IRF3.6put*/{T477* C1=((T477*)((((T199*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T199*)C))->_has_mem/*24*/; ((((T477*)C1))->_storage/*4*/)[(b2)-((((T477*)C1))->_lower/*16*/)]=(b1); }/*]*/ } /*FI*/C->_item_mem=0; } /*No:DICTIONARY[RUN_FEATURE,STRING].modulus*/ /*No:DICTIONARY[RUN_FEATURE,STRING].count*/ /*No:DICTIONARY[RUN_FEATURE,STRING].has_mem*/ void r199initialize(T199* C){ int _i=0; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; _i=1; while (!((_i)==(r429count(((T429*)((((T199*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T199*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T199*)C))->_chain/*12*/)); int b1=0; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=0; while (!((_i)>=((((T199*)C))->_modulus/*20*/))) { /*[IRF3.5put*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]=(0); /*]*/ _i=(_i)+(1); } } void r199first(T199* C){ int _i=0; _i=0; while (!((/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/)!=(0))) { _i=(_i)+(1); } C->_item_mem_i=_i; C->_item_mem_j=/*(IRF4.6item*/((((T226*)((T226*)((((T199*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/; C->_item_mem=1; } T0* r718at(T718* C,T0* a1){ T0* R=NULL; int _foo=0; _foo=r718has(C,a1); R=r863item(((T863*)((((T718*)C))->_store/*4*/)),(((T718*)C))->_has_mem/*24*/); return R; } void r718expand(T718* C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=r863count(((T863*)((((T718*)C))->_store/*4*/))); r429resize(((T429*)((((T718*)C))->_chain/*12*/)),1,(2)*(_old_size)); r52resize(((T52*)((((T718*)C))->_keys/*0*/)),1,(2)*(_old_size)); r863resize(((T863*)((((T718*)C))->_store/*4*/)),1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(r429count(((T429*)((((T718*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T718*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T718*)C))->_chain/*12*/)); int b1=(((T718*)C))->_free/*16*/; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_free=(_old_size)+(1); } /*No:DICTIONARY[BASE_CLASS,STRING].free*/ void r718make(T718* C){ C->_modulus=(2)*(32); {T226*n=malloc(sizeof(*n)); *n=M226; r226make(n,(((T718*)C))->_modulus/*20*/); C->_buckets=(T0*)n; } {T429*n=malloc(sizeof(*n)); *n=M429; r429make(n,1,32); C->_chain=(T0*)n; } {T863*n=malloc(sizeof(*n)); *n=M863; r863make(n,1,32); C->_store=(T0*)n; } {T52*n=malloc(sizeof(*n)); *n=M52; r52make(n,1,32); C->_keys=(T0*)n; } r718initialize(C); } void r718resize(T718* C,int a1){ int _p=0; int _n=0; int _i=0; int _hash=0; r226copy(((T226*)(oBC672tmp_buckets)),(((T718*)C))->_buckets/*8*/); r226make(((T226*)((((T718*)C))->_buckets/*8*/)),a1); _i=0; while (!((_i)>=((((T718*)C))->_modulus/*20*/))) { _n=/*(IRF4.6item*/((((T226*)((T226*)(oBC672tmp_buckets))))->_storage/*0*/)[_i]/*)*/; while (!((_n)==(0))) { _p=r429item(((T429*)((((T718*)C))->_chain/*12*/)),_n); _hash=(r7hash_code(((T7*)(r52item(((T52*)((((T718*)C))->_keys/*0*/)),_n)))))%(a1); /*[IRF3.6put*/{T429* C1=((T429*)((((T718*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=_n; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=(_n); /*]*/ _n=_p; } _i=(_i)+(1); } C->_modulus=a1; C->_item_mem=0; } /*No:DICTIONARY[BASE_CLASS,STRING].item_mem*/ /*No:DICTIONARY[BASE_CLASS,STRING].chain*/ /*No:DICTIONARY[BASE_CLASS,STRING].keys*/ /*No:DICTIONARY[BASE_CLASS,STRING].buckets*/ int r718has(T718* C,T0* a1){ int R=0; /*IF*/if ((((((T718*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a1),r52item(((T52*)((((T718*)C))->_keys/*0*/)),(((T718*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[(r7hash_code(((T7*)a1)))%((((T718*)C))->_modulus/*20*/)]/*)*/; while (!((((((T718*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a1),r52item(((T52*)((((T718*)C))->_keys/*0*/)),(((T718*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T718*)C))->_chain/*12*/)),(((T718*)C))->_has_mem/*24*/); } } /*FI*/R=((((T718*)C))->_has_mem/*24*/)!=(0); return R; } /*No:DICTIONARY[BASE_CLASS,STRING].Min_size*/ /*No:DICTIONARY[BASE_CLASS,STRING].store*/ void r718put(T718* C,T0* a1,T0* a2){ int _hash=0; _hash=(r7hash_code(((T7*)a2)))%((((T718*)C))->_modulus/*20*/); /*IF*/if ((((((T718*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a2),r52item(((T52*)((((T718*)C))->_keys/*0*/)),(((T718*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; while (!((((((T718*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a2),r52item(((T52*)((((T718*)C))->_keys/*0*/)),(((T718*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T718*)C))->_chain/*12*/)),(((T718*)C))->_has_mem/*24*/); } /*IF*/if (((((T718*)C))->_has_mem/*24*/)==(0)) { /*IF*/if (((((T718*)C))->_count/*32*/)>=(r863count(((T863*)((((T718*)C))->_store/*4*/))))) { r718expand(C); } /*FI*//*[IRF3.6put*/{T52* C1=((T52*)((((T718*)C))->_keys/*0*/)); T0* b1=a2; int b2=(((T718*)C))->_free/*16*/; ((((T52*)C1))->_storage/*0*/)[(b2)-((((T52*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.6put*/{T863* C1=((T863*)((((T718*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T718*)C))->_free/*16*/; ((((T863*)C1))->_storage/*0*/)[(b2)-((((T863*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_has_mem=(((T718*)C))->_free/*16*/; C->_free=r429item(((T429*)((((T718*)C))->_chain/*12*/)),(((T718*)C))->_free/*16*/); /*[IRF3.6put*/{T429* C1=((T429*)((((T718*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=(((T718*)C))->_has_mem/*24*/; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=((((T718*)C))->_has_mem/*24*/); /*]*/ C->_count=((((T718*)C))->_count/*32*/)+(1); /*IF*/if (((((T718*)C))->_count/*32*/)>(((((T718*)C))->_modulus/*20*/)*(2))) { r718resize(C,(2)*((((T718*)C))->_modulus/*20*/)); } /*FI*/} /*FI*/} else { /*[IRF3.6put*/{T863* C1=((T863*)((((T718*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T718*)C))->_has_mem/*24*/; ((((T863*)C1))->_storage/*0*/)[(b2)-((((T863*)C1))->_lower/*12*/)]=(b1); }/*]*/ } /*FI*/C->_item_mem=0; } /*No:DICTIONARY[BASE_CLASS,STRING].modulus*/ /*No:DICTIONARY[BASE_CLASS,STRING].count*/ /*No:DICTIONARY[BASE_CLASS,STRING].has_mem*/ void r718initialize(T718* C){ int _i=0; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; _i=1; while (!((_i)==(r429count(((T429*)((((T718*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T718*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T718*)C))->_chain/*12*/)); int b1=0; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=0; while (!((_i)>=((((T718*)C))->_modulus/*20*/))) { /*[IRF3.5put*/((((T226*)((T226*)((((T718*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]=(0); /*]*/ _i=(_i)+(1); } } /*No:MEMO[COMMENT].item*/ /*No:MEMO[COMMENT].clear*/ /*No:MEMO[COMMENT].set_item*/ T0* r250at(T250* C,T0* a1){ T0* R=NULL; int _foo=0; _foo=r250has(C,a1); R=r396item(((T396*)((((T250*)C))->_store/*4*/)),(((T250*)C))->_has_mem/*24*/); return R; } void r250expand(T250* C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=r396count(((T396*)((((T250*)C))->_store/*4*/))); r429resize(((T429*)((((T250*)C))->_chain/*12*/)),1,(2)*(_old_size)); r52resize(((T52*)((((T250*)C))->_keys/*0*/)),1,(2)*(_old_size)); r396resize(((T396*)((((T250*)C))->_store/*4*/)),1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(r429count(((T429*)((((T250*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T250*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T250*)C))->_chain/*12*/)); int b1=(((T250*)C))->_free/*16*/; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_free=(_old_size)+(1); } /*No:DICTIONARY[RUN_CLASS,STRING].free*/ void r250make(T250* C){ C->_modulus=(2)*(32); {T226*n=malloc(sizeof(*n)); *n=M226; r226make(n,(((T250*)C))->_modulus/*20*/); C->_buckets=(T0*)n; } {T429*n=malloc(sizeof(*n)); *n=M429; r429make(n,1,32); C->_chain=(T0*)n; } {T396*n=malloc(sizeof(*n)); *n=M396; r396make(n,1,32); C->_store=(T0*)n; } {T52*n=malloc(sizeof(*n)); *n=M52; r52make(n,1,32); C->_keys=(T0*)n; } r250initialize(C); } T0* r250item(T250* C,int a1){ T0* R=NULL; /*IF*/if (((((T250*)C))->_item_mem/*28*/)==(0)) { r250first(C); while (!((a1)==((((T250*)C))->_item_mem/*28*/))) { r250forth(C); } R=r396item(((T396*)((((T250*)C))->_store/*4*/)),(((T250*)C))->_item_mem_j/*32*/); } else if (((((T250*)C))->_item_mem/*28*/)<=(a1)) { while (!((a1)==((((T250*)C))->_item_mem/*28*/))) { r250forth(C); } R=r396item(((T396*)((((T250*)C))->_store/*4*/)),(((T250*)C))->_item_mem_j/*32*/); } else { C->_item_mem=0; R=r250item(C,a1); } /*FI*/return R; } /*No:DICTIONARY[RUN_CLASS,STRING].item_mem_i*/ void r250resize(T250* C,int a1){ int _p=0; int _n=0; int _i=0; int _hash=0; r226copy(((T226*)(oBC672tmp_buckets)),(((T250*)C))->_buckets/*8*/); r226make(((T226*)((((T250*)C))->_buckets/*8*/)),a1); _i=0; while (!((_i)>=((((T250*)C))->_modulus/*20*/))) { _n=/*(IRF4.6item*/((((T226*)((T226*)(oBC672tmp_buckets))))->_storage/*0*/)[_i]/*)*/; while (!((_n)==(0))) { _p=r429item(((T429*)((((T250*)C))->_chain/*12*/)),_n); _hash=(r7hash_code(((T7*)(r52item(((T52*)((((T250*)C))->_keys/*0*/)),_n)))))%(a1); /*[IRF3.6put*/{T429* C1=((T429*)((((T250*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=_n; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=(_n); /*]*/ _n=_p; } _i=(_i)+(1); } C->_modulus=a1; C->_item_mem=0; } /*No:DICTIONARY[RUN_CLASS,STRING].item_mem_j*/ /*No:DICTIONARY[RUN_CLASS,STRING].item_mem*/ /*No:DICTIONARY[RUN_CLASS,STRING].chain*/ /*No:DICTIONARY[RUN_CLASS,STRING].keys*/ /*No:DICTIONARY[RUN_CLASS,STRING].buckets*/ int r250has(T250* C,T0* a1){ int R=0; /*IF*/if ((((((T250*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a1),r52item(((T52*)((((T250*)C))->_keys/*0*/)),(((T250*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[(r7hash_code(((T7*)a1)))%((((T250*)C))->_modulus/*20*/)]/*)*/; while (!((((((T250*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a1),r52item(((T52*)((((T250*)C))->_keys/*0*/)),(((T250*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T250*)C))->_chain/*12*/)),(((T250*)C))->_has_mem/*24*/); } } /*FI*/R=((((T250*)C))->_has_mem/*24*/)!=(0); return R; } /*No:DICTIONARY[RUN_CLASS,STRING].Min_size*/ void r250forth(T250* C){ int _i=0; /*IF*/if ((r429item(((T429*)((((T250*)C))->_chain/*12*/)),(((T250*)C))->_item_mem_j/*32*/))!=(0)) { C->_item_mem_j=r429item(((T429*)((((T250*)C))->_chain/*12*/)),(((T250*)C))->_item_mem_j/*32*/); } else { _i=((((T250*)C))->_item_mem_i/*36*/)+(1); while (!((/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/)!=(0))) { _i=(_i)+(1); } C->_item_mem_i=_i; C->_item_mem_j=/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/; } /*FI*/C->_item_mem=((((T250*)C))->_item_mem/*28*/)+(1); } /*No:DICTIONARY[RUN_CLASS,STRING].store*/ void r250put(T250* C,T0* a1,T0* a2){ int _hash=0; _hash=(r7hash_code(((T7*)a2)))%((((T250*)C))->_modulus/*20*/); /*IF*/if ((((((T250*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a2),r52item(((T52*)((((T250*)C))->_keys/*0*/)),(((T250*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; while (!((((((T250*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a2),r52item(((T52*)((((T250*)C))->_keys/*0*/)),(((T250*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T250*)C))->_chain/*12*/)),(((T250*)C))->_has_mem/*24*/); } /*IF*/if (((((T250*)C))->_has_mem/*24*/)==(0)) { /*IF*/if (((((T250*)C))->_count/*40*/)>=(r396count(((T396*)((((T250*)C))->_store/*4*/))))) { r250expand(C); } /*FI*//*[IRF3.6put*/{T52* C1=((T52*)((((T250*)C))->_keys/*0*/)); T0* b1=a2; int b2=(((T250*)C))->_free/*16*/; ((((T52*)C1))->_storage/*0*/)[(b2)-((((T52*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.6put*/{T396* C1=((T396*)((((T250*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T250*)C))->_free/*16*/; ((((T396*)C1))->_storage/*0*/)[(b2)-((((T396*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_has_mem=(((T250*)C))->_free/*16*/; C->_free=r429item(((T429*)((((T250*)C))->_chain/*12*/)),(((T250*)C))->_free/*16*/); /*[IRF3.6put*/{T429* C1=((T429*)((((T250*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=(((T250*)C))->_has_mem/*24*/; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=((((T250*)C))->_has_mem/*24*/); /*]*/ C->_count=((((T250*)C))->_count/*40*/)+(1); /*IF*/if (((((T250*)C))->_count/*40*/)>(((((T250*)C))->_modulus/*20*/)*(2))) { r250resize(C,(2)*((((T250*)C))->_modulus/*20*/)); } /*FI*/} /*FI*/} else { /*[IRF3.6put*/{T396* C1=((T396*)((((T250*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T250*)C))->_has_mem/*24*/; ((((T396*)C1))->_storage/*0*/)[(b2)-((((T396*)C1))->_lower/*12*/)]=(b1); }/*]*/ } /*FI*/C->_item_mem=0; } /*No:DICTIONARY[RUN_CLASS,STRING].modulus*/ /*No:DICTIONARY[RUN_CLASS,STRING].count*/ /*No:DICTIONARY[RUN_CLASS,STRING].has_mem*/ void r250first(T250* C){ int _i=0; _i=0; while (!((/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/)!=(0))) { _i=(_i)+(1); } C->_item_mem_i=_i; C->_item_mem_j=/*(IRF4.6item*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]/*)*/; C->_item_mem=1; } void r250initialize(T250* C){ int _i=0; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; _i=1; while (!((_i)==(r429count(((T429*)((((T250*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T250*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T250*)C))->_chain/*12*/)); int b1=0; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=0; while (!((_i)>=((((T250*)C))->_modulus/*20*/))) { /*[IRF3.5put*/((((T226*)((T226*)((((T250*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]=(0); /*]*/ _i=(_i)+(1); } } T0* r237at(T237* C,T0* a1){ T0* R=NULL; int _foo=0; _foo=r237has(C,a1); R=r495item(((T495*)((((T237*)C))->_store/*4*/)),(((T237*)C))->_has_mem/*24*/); return R; } void r237expand(T237* C){ int _old_size=0; int _i=0; C->_item_mem=0; _old_size=r495count(((T495*)((((T237*)C))->_store/*4*/))); r429resize(((T429*)((((T237*)C))->_chain/*12*/)),1,(2)*(_old_size)); r52resize(((T52*)((((T237*)C))->_keys/*0*/)),1,(2)*(_old_size)); r495resize(((T495*)((((T237*)C))->_store/*4*/)),1,(2)*(_old_size)); _i=(_old_size)+(1); while (!((_i)==(r429count(((T429*)((((T237*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T237*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T237*)C))->_chain/*12*/)); int b1=(((T237*)C))->_free/*16*/; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_free=(_old_size)+(1); } /*No:DICTIONARY[E_FEATURE,STRING].free*/ void r237resize(T237* C,int a1){ int _p=0; int _n=0; int _i=0; int _hash=0; r226copy(((T226*)(oBC672tmp_buckets)),(((T237*)C))->_buckets/*8*/); r226make(((T226*)((((T237*)C))->_buckets/*8*/)),a1); _i=0; while (!((_i)>=((((T237*)C))->_modulus/*20*/))) { _n=/*(IRF4.6item*/((((T226*)((T226*)(oBC672tmp_buckets))))->_storage/*0*/)[_i]/*)*/; while (!((_n)==(0))) { _p=r429item(((T429*)((((T237*)C))->_chain/*12*/)),_n); _hash=(r7hash_code(((T7*)(r52item(((T52*)((((T237*)C))->_keys/*0*/)),_n)))))%(a1); /*[IRF3.6put*/{T429* C1=((T429*)((((T237*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=_n; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=(_n); /*]*/ _n=_p; } _i=(_i)+(1); } C->_modulus=a1; C->_item_mem=0; } /*No:DICTIONARY[E_FEATURE,STRING].item_mem*/ /*No:DICTIONARY[E_FEATURE,STRING].chain*/ /*No:DICTIONARY[E_FEATURE,STRING].buckets*/ /*No:DICTIONARY[E_FEATURE,STRING].keys*/ int r237has(T237* C,T0* a1){ int R=0; /*IF*/if ((((((T237*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a1),r52item(((T52*)((((T237*)C))->_keys/*0*/)),(((T237*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[(r7hash_code(((T7*)a1)))%((((T237*)C))->_modulus/*20*/)]/*)*/; while (!((((((T237*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a1),r52item(((T52*)((((T237*)C))->_keys/*0*/)),(((T237*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T237*)C))->_chain/*12*/)),(((T237*)C))->_has_mem/*24*/); } } /*FI*/R=((((T237*)C))->_has_mem/*24*/)!=(0); return R; } /*No:DICTIONARY[E_FEATURE,STRING].Min_size*/ /*No:DICTIONARY[E_FEATURE,STRING].store*/ void r237with_capacity(T237* C,int a1){ int _i=0; _i=32; while (!((_i)>=(a1))) { _i=(2)*(_i); } C->_modulus=(2)*(_i); {T226*n=malloc(sizeof(*n)); *n=M226; r226make(n,(((T237*)C))->_modulus/*20*/); C->_buckets=(T0*)n; } {T429*n=malloc(sizeof(*n)); *n=M429; r429make(n,1,_i); C->_chain=(T0*)n; } {T495*n=malloc(sizeof(*n)); *n=M495; r495make(n,1,_i); C->_store=(T0*)n; } {T52*n=malloc(sizeof(*n)); *n=M52; r52make(n,1,_i); C->_keys=(T0*)n; } r237initialize(C); } void r237put(T237* C,T0* a1,T0* a2){ int _hash=0; _hash=(r7hash_code(((T7*)a2)))%((((T237*)C))->_modulus/*20*/); /*IF*/if ((((((T237*)C))->_has_mem/*24*/)==(0))||(!(r7is_equal(((T7*)a2),r52item(((T52*)((((T237*)C))->_keys/*0*/)),(((T237*)C))->_has_mem/*24*/))))) { C->_has_mem=/*(IRF4.6item*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; while (!((((((T237*)C))->_has_mem/*24*/)==(0))||(r7is_equal(((T7*)a2),r52item(((T52*)((((T237*)C))->_keys/*0*/)),(((T237*)C))->_has_mem/*24*/))))) { C->_has_mem=r429item(((T429*)((((T237*)C))->_chain/*12*/)),(((T237*)C))->_has_mem/*24*/); } /*IF*/if (((((T237*)C))->_has_mem/*24*/)==(0)) { /*IF*/if (((((T237*)C))->_count/*32*/)>=(r495count(((T495*)((((T237*)C))->_store/*4*/))))) { r237expand(C); } /*FI*//*[IRF3.6put*/{T52* C1=((T52*)((((T237*)C))->_keys/*0*/)); T0* b1=a2; int b2=(((T237*)C))->_free/*16*/; ((((T52*)C1))->_storage/*0*/)[(b2)-((((T52*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.6put*/{T495* C1=((T495*)((((T237*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T237*)C))->_free/*16*/; ((((T495*)C1))->_storage/*0*/)[(b2)-((((T495*)C1))->_lower/*12*/)]=(b1); }/*]*/ C->_has_mem=(((T237*)C))->_free/*16*/; C->_free=r429item(((T429*)((((T237*)C))->_chain/*12*/)),(((T237*)C))->_free/*16*/); /*[IRF3.6put*/{T429* C1=((T429*)((((T237*)C))->_chain/*12*/)); int b1=/*(IRF4.6item*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]/*)*/; int b2=(((T237*)C))->_has_mem/*24*/; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ /*[IRF3.5put*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[_hash]=((((T237*)C))->_has_mem/*24*/); /*]*/ C->_count=((((T237*)C))->_count/*32*/)+(1); /*IF*/if (((((T237*)C))->_count/*32*/)>(((((T237*)C))->_modulus/*20*/)*(2))) { r237resize(C,(2)*((((T237*)C))->_modulus/*20*/)); } /*FI*/} /*FI*/} else { /*[IRF3.6put*/{T495* C1=((T495*)((((T237*)C))->_store/*4*/)); T0* b1=a1; int b2=(((T237*)C))->_has_mem/*24*/; ((((T495*)C1))->_storage/*0*/)[(b2)-((((T495*)C1))->_lower/*12*/)]=(b1); }/*]*/ } /*FI*/C->_item_mem=0; } /*No:DICTIONARY[E_FEATURE,STRING].modulus*/ /*No:DICTIONARY[E_FEATURE,STRING].count*/ /*No:DICTIONARY[E_FEATURE,STRING].has_mem*/ void r237initialize(T237* C){ int _i=0; C->_count=0; C->_free=1; C->_has_mem=0; C->_item_mem=0; _i=1; while (!((_i)==(r429count(((T429*)((((T237*)C))->_chain/*12*/)))))) { /*[IRF3.6put*/{T429* C1=((T429*)((((T237*)C))->_chain/*12*/)); int b1=(_i)+(1); int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=(_i)+(1); } /*[IRF3.6put*/{T429* C1=((T429*)((((T237*)C))->_chain/*12*/)); int b1=0; int b2=_i; ((((T429*)C1))->_storage/*0*/)[(b2)-((((T429*)C1))->_lower/*12*/)]=(b1); }/*]*/ _i=0; while (!((_i)>=((((T237*)C))->_modulus/*20*/))) { /*[IRF3.5put*/((((T226*)((T226*)((((T237*)C))->_buckets/*8*/))))->_storage/*0*/)[_i]=(0); /*]*/ _i=(_i)+(1); } } T0*oBC364eh=NULL; /*No:COMPILE_TO_JVM.dos_system*/ /*No:COMPILE_TO_JVM.fz_system_se*/ /*No:COMPILE_TO_JVM.fz_sys*/ T0*oBC364run_control=NULL; T0*oBC364tmp_file_read=NULL; /*No:COMPILE_TO_JVM.unix_system*/ /*No:COMPILE_TO_JVM.us_compile_to_jvm*/ /*No:COMPILE_TO_JVM.exit_failure_code*/ /*No:COMPILE_TO_JVM.vms_system*/ int fBC364small_eiffel_directory=0; T0*oBC364small_eiffel_directory=NULL; T0* r632small_eiffel_directory(T632* C){ if (fBC364small_eiffel_directory==0){ T0* R=NULL; char _slash=0; int _i=0; fBC364small_eiffel_directory=1; R=r632get_environment_variable(C,((T0*)ms121_470)); /*IF*/if ((R)==((void*)(NULL))) { R=r7twin(((T7*)(((T0*)ms121_470)))); r7to_upper(((T7*)R)); R=r632get_environment_variable(C,R); /*IF*/if ((R)!=((void*)(NULL))) { r7to_upper(((T7*)(((T0*)ms121_470)))); } /*FI*/} /*FI*//*IF*/if ((R)==((void*)(NULL))) { R=((T0*)ms1_364); } /*FI*/_i=(((T7*)((T7*)R)))->_count/*4*/; while (!((_i)<(0))) { _slash=/*(IRF4.6item*/((((T7*)((T7*)R)))->_storage/*0*/)[(_i)-(1)]/*)*/; /*IF*/if ((r3is_letter(_slash))||(r3is_digit(_slash))) { _i=(_i)-(1); } else { _i=-(1); } /*FI*/} /*IF*/if ((_i)==(0)) { r7extend(((T7*)R),'\57'); } else if (!((r7last(((T7*)R)))==(_slash))) { r7extend(((T7*)R),_slash); } /*FI*/oBC364small_eiffel_directory=R;} return oBC364small_eiffel_directory;} /*No:COMPILE_TO_JVM.root_class*/ T0* r632command_name(void){ T0* R=NULL; R=((T0*)ms59_473); return R; } void r632automat(T632* C){ T0* _a=NULL; int _arg=0; _arg=1; while (!(((_arg)>(/*(IRF4.9argument_count*/(((T927*)((T927*)(r632command_arguments()))))->_upper/*8*//*)*/))||(((((T632*)C))->_state/*0*/)>(7)))) { _a=r632argument(_arg); {int z1=(((T632*)C))->_state/*0*/; if((0==z1)){ /*IF*/if ((/*(IRF4.6item*/((((T7*)((T7*)_a)))->_storage/*0*/)[(1)-(1)]/*)*/)!=('\55')) { C->_root_class=_a; /*[IRF3.3set_root_class*/((((T590*)(((T590*)(oBC364run_control)))))->_root_class)=(_a); /*]*/ C->_state=1; } else if (r7is_equal(ms3_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_boost*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-6); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms4_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_no_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-5); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms5_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_require_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-4); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms6_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_ensure_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-3); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms7_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_invariant_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-2); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms8_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_loop_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-1); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms9_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_all_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(0); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms10_632,_a)) { /*IF*/if (((((T632*)C))->_level/*4*/)!=((void*)(NULL))) { r632error_level(C,_a); } else { /*[IRF3.3set_debug_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(1); /*]*/ C->_level=_a; } /*FI*/} else if (r7is_equal(ms11_632,_a)) { /*[IRF3.3set_no_warning*/((((T683*)(((T683*)(oBC364eh)))))->_no_warning)=(1); /*]*/ } else if (r7is_equal(ms12_632,_a)) { /*[IRF3.3set_verbose*/((((T306*)(((T306*)(oBC364echo)))))->_verbose)=(1); /*]*/ } else if (r7is_equal(ms13_632,_a)) { /*[IRF3.3set_trace*/((((T590*)(((T590*)(oBC364run_control)))))->_trace)=(1); /*]*/ } else if (r7is_equal(ms14_632,_a)) { C->_state=2; } else if (r7is_equal(ms15_632,_a)) { C->_state=3; } else { /*[IRF3.6append*/{T0* b1=((T0*)ms16_632); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=_a; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=((T0*)ms17_632); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683print_as_error(((T683*)(oBC364eh))); C->_state=9; } /*FI*/} else if((1==z1)){ /*IF*/if ((/*(IRF4.6item*/((((T7*)((T7*)_a)))->_storage/*0*/)[(1)-(1)]/*)*/)==('\55')) { _arg=(_arg)-(1); } else { C->_start_proc=_a; } /*FI*/C->_state=0; } else if((2==z1)){ /*[IRF3.3set_cecil_path*/((((T590*)(((T590*)(oBC364run_control)))))->_cecil_path)=(_a); /*]*/ C->_state=0; } else {/*[IRF3.3set_output_name*/((((T228*)(((T228*)(oBC364jvm)))))->_output_name)=(_a); /*]*/ C->_state=0; }} _arg=(_arg)+(1); } /*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) { /*IF*/if ((((T590*)((T590*)(oBC364run_control))))->_trace/*4*/) { /*IF*/if (r590boost(((T590*)(oBC364run_control)))) { /*[IRF3.3set_no_check*/((((T590*)(((T590*)(oBC364run_control)))))->_level)=(-5); /*]*/ } /*FI*/} /*FI*/r604compile_to_jvm(((T604*)(oBC364small_eiffel)),(((T632*)C))->_root_class/*8*/,(((T632*)C))->_start_proc/*12*/); } /*FI*/} /*No:COMPILE_TO_JVM.amiga_system*/ void r632make(T632* C){ C->_start_proc=((T0*)ms89_473); /*[IRF3.3set_drop_comments*/((((T818*)(((T818*)(oBC364eiffel_parser)))))->_drop_comments)=(1); /*]*/ /*IF*/if ((/*(IRF4.9argument_count*/(((T927*)((T927*)(r632command_arguments()))))->_upper/*8*//*)*/)<(1)) { r441put_string(((T441*)(oBC1std_error)),((T0*)ms1_632)); r632print_help(C,((T0*)ms2_632)); exit(1); } else { r632automat(C); } /*FI*/} /*No:COMPILE_TO_JVM.nb_errors*/ /*No:COMPILE_TO_JVM.help_suffix*/ T0*oBC364help_file_name=NULL; T0*oBC1std_error=NULL; void r632add_directory(T632* C,T0* a1,T0* a2){ /*IF*/if ((((T0*)ms17_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\57'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\57'); } else if ((((T0*)ms19_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\134'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\134'); } else if ((((T0*)ms15_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\72'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\72'); } else if ((((T0*)ms14_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\134'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\134'); } else if ((((T0*)ms16_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\134'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\134'); } else if ((((T0*)ms13_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\57'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\57'); } else if ((((T0*)ms18_364))==((void*)(r632system_name(C)))) { r7set_last(((T7*)a1),'\135'); r7remove_last(((T7*)a1),1); r7set_last(((T7*)a1),'\56'); r7append(((T7*)a1),a2); r7set_last(((T7*)a1),'\135'); } /*FI*/} T670 oBC1file_tools=0; T0*oBC1std_output=NULL; /*No:COMPILE_TO_JVM.level*/ /*No:COMPILE_TO_JVM.windows_system*/ T0*oBC364eiffel_parser=NULL; T0*oBC364echo=NULL; T0* r632get_environment_variable(T632* C,T0* a1){ T0* R=NULL; void* _p=0; _p=r7to_external(((T7*)a1)); R=(NULL==(_p=getenv((char*)_p)))?NULL:((T0*)e2s((char*)_p)); return R; } void r632print_help(T632* C,T0* a1){ r7copy(((T7*)(oBC364help_file_name)),r632small_eiffel_directory(C)); r632add_directory(C,oBC364help_file_name,((T0*)ms2_364)); r7append(((T7*)(oBC364help_file_name)),a1); /*IF*/if (!(r7has_suffix(((T7*)(oBC364help_file_name)),((T0*)ms39_364)))) { r7append(((T7*)(oBC364help_file_name)),((T0*)ms39_364)); } /*FI*//*IF*/if (!(r632file_exists(oBC364help_file_name))) { r306w_put_string(((T0*)ms3_364)); r306w_put_string(oBC364help_file_name); r306w_put_string(((T0*)ms242_470)); exit(1); } /*FI*/r830append_file(((T830*)(oBC1std_output)),oBC364help_file_name); } int fBC1command_arguments=0; T0*oBC1command_arguments=NULL; T0* r632command_arguments(void){ if (fBC1command_arguments==0){ T0* R=NULL; T0* _arg=NULL; int _i=0; fBC1command_arguments=1; _i=se_argc; {T927*n=malloc(sizeof(*n)); *n=M927; r927make(n,_i); R=(T0*)n; } while (!((_i)==(0))) { _i=(_i)-(1); _arg=((T0*)e2s(se_argv[_i])); /*[IRF3.5put*/((((T927*)((T927*)R)))->_storage/*0*/)[_i]=(_arg); /*]*/ } oBC1command_arguments=R;} return oBC1command_arguments;} /*No:COMPILE_TO_JVM.us_make*/ T0*oBC364system_list=NULL; int fBC364system_name=0; T0*oBC364system_name=NULL; T0* r632system_name(T632* C){ if (fBC364system_name==0){ T0* R=NULL; int _i=0; fBC364system_name=1; r7copy(((T7*)(oBC364tmp_path)),r632small_eiffel_directory(C)); /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\57')) { r7set_last(((T7*)(oBC364tmp_path)),'\57'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470)); r7extend(((T7*)(oBC364tmp_path)),'\57'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470)); r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path); } /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) { r7copy(((T7*)(oBC364tmp_path)),r632small_eiffel_directory(C)); /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\134')) { r7set_last(((T7*)(oBC364tmp_path)),'\134'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470)); r7extend(((T7*)(oBC364tmp_path)),'\134'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470)); r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path); } /*FI*/} /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) { r7copy(((T7*)(oBC364tmp_path)),r632small_eiffel_directory(C)); /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\72')) { r7set_last(((T7*)(oBC364tmp_path)),'\72'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470)); r7extend(((T7*)(oBC364tmp_path)),'\72'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470)); r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path); } /*FI*/} /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) { r7copy(((T7*)(oBC364tmp_path)),r632small_eiffel_directory(C)); /*IF*/if (r7has(((T7*)(oBC364tmp_path)),'\135')) { r7set_last(((T7*)(oBC364tmp_path)),'\135'); r7remove_last(((T7*)(oBC364tmp_path)),1); r7extend(((T7*)(oBC364tmp_path)),'\56'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms126_470)); r7extend(((T7*)(oBC364tmp_path)),'\135'); r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470)); r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path); } /*FI*/} /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) { r7copy(((T7*)(oBC364tmp_path)),r632small_eiffel_directory(C)); r7append(((T7*)(oBC364tmp_path)),((T0*)ms127_470)); r306sfr_connect(((T306*)(oBC364echo)),oBC364tmp_file_read,oBC364tmp_path); } /*FI*//*IF*/if (!(/*(IRF4.7is_connected*/((((T675*)((T675*)(oBC364tmp_file_read))))->_path/*4*/)!=(NULL)/*)*/)) { r306w_put_string(((T0*)ms20_364)); r306w_put_string(((T0*)ms127_470)); r306w_put_string(((T0*)ms21_364)); r306w_put_string(r632small_eiffel_directory(C)); r306w_put_string(((T0*)ms242_470)); exit(1); } /*FI*/r675read_line(((T675*)(oBC364tmp_file_read))); R=oBC762last_string; _i=r52index_of(((T52*)(oBC364system_list)),R); r675disconnect(((T675*)(oBC364tmp_file_read))); /*IF*/if ((_i)>((((T52*)((T52*)(oBC364system_list))))->_upper/*8*/)) { r306w_put_string(((T0*)ms22_364)); r306w_put_string(oBC364tmp_path); r306w_put_string(((T0*)ms23_364)); _i=1; while (!((_i)>((((T52*)((T52*)(oBC364system_list))))->_upper/*8*/))) { r306w_put_string(r52item(((T52*)(oBC364system_list)),_i)); r306w_put_character('\n'); _i=(_i)+(1); } } else { R=r52item(((T52*)(oBC364system_list)),_i); r306put_string(((T306*)(oBC364echo)),((T0*)ms24_364)); r306put_string(((T306*)(oBC364echo)),R); r306put_string(((T306*)(oBC364echo)),((T0*)ms242_470)); } /*FI*/oBC364system_name=R;} return oBC364system_name;} T0*oBC364jvm=NULL; T0*oBC364tmp_path=NULL; /*No:COMPILE_TO_JVM.fz_b0*/ /*No:COMPILE_TO_JVM.fz_se*/ /*No:COMPILE_TO_JVM.os2_system*/ T0*oBC364small_eiffel=NULL; /*No:COMPILE_TO_JVM.state*/ int r632file_exists(T0* a1){ int R=0; R=r670is_readable(a1); return R; } /*No:COMPILE_TO_JVM.argument_count*/ /*No:COMPILE_TO_JVM.macintosh_system*/ /*No:COMPILE_TO_JVM.fz_dot*/ void r632error_level(T632* C,T0* a1){ C->_state=9; /*[IRF3.6append*/{T0* b1=r632command_name(); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=((T0*)ms1_765); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=(((T632*)C))->_level/*4*/; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=((T0*)ms2_765); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=a1; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=((T0*)ms67_470); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683print_as_error(((T683*)(oBC364eh))); } /*No:COMPILE_TO_JVM.start_proc*/ T0* r632argument(int a1){ T0* R=NULL; R=/*(IRF4.6item*/((((T927*)((T927*)(r632command_arguments()))))->_storage/*0*/)[a1]/*)*/; return R; } void r376check_creation_clause(T376* C,T0* a1){ /*IF*/if (/*(IRF4.7has_creation_clause*/((((T605*)((T605*)(X291base_class(a1)))))->_creation_clause_list/*44*/)!=(NULL)/*)*/) { /*[IRF3.6append*/{T0* b1=((T0*)ms1_334); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683add_type(a1,((T0*)ms2_334)); r376error((((T376*)C))->_start_position/*8*/,((T0*)ms3_334)); } /*FI*/} T0* r376add_comment(T376* C,T0* a1){ T0* R=NULL; /*IF*/if (((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)==(0))) { R=(T0*)C; } /*AF*/else { {T46*n=malloc(sizeof(*n)); *n=M46; r46make(n,(T0*)C,a1); R=(T0*)n; } } /*FI*/return R; } void r376check_created_type(T376* C,T0* a1){ T0* _rt=NULL; _rt=X291run_type(a1); /*IF*/if ((((T604*)((T604*)(oBC364small_eiffel))))->_short_flag/*4*/) { } else if ((((T605*)((T605*)(X291base_class(_rt)))))->_is_deferred/*16*/) { r683add_type(_rt,((T0*)ms2_747)); r683add_position((((T376*)C))->_start_position/*8*/); /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms3_747); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } /*FI*//*IF*/if (X291is_formal_generic(a1)) { r683add_position((((T376*)C))->_start_position/*8*/); /*[IRF3.6append*/{T0* b1=((T0*)ms4_747); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683add_type(a1,((T0*)ms5_747)); r683print_as_fatal_error(((T683*)(oBC364eh))); } /*FI*/r355set_at_run_time(((T355*)(X291run_class(_rt)))); } /*No:CREATION_CALL_2.writable*/ void r376make(T376* C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_type=a2; C->_writable=a3; } /*No:CREATION_CALL_2.type*/ /*No:CREATION_CALL_2.start_position*/ T0* r376to_runnable(T376* C,T0* a1){ T0* R=NULL; /*IF*/if (((((T376*)C))->_run_compound/*4*/)==((void*)(NULL))) { r376check_writable(C,a1); r376check_explicit_type(C); r376check_created_type(C,(((T376*)C))->_type/*16*/); r376check_creation_clause(C,(((T376*)C))->_type/*16*/); R=(T0*)C; } else { {T376*n=malloc(sizeof(*n)); *n=M376; r376make(n,(((T376*)C))->_start_position/*8*/,(((T376*)C))->_type/*16*/,(((T376*)C))->_writable/*12*/); R=(T0*)n; } R=r376to_runnable(((T376*)R),a1); } /*FI*/return R; } T0* r376current_type(T376* C){ T0* R=NULL; /*IF*/if (((((T376*)C))->_run_compound/*4*/)!=((void*)(NULL))) { R=(((T592*)((T592*)((((T376*)C))->_run_compound/*4*/))))->_current_type/*4*/; } /*FI*/return R; } /*No:CREATION_CALL_2.run_compound*/ void r376check_explicit_type(T376* C){ T0* _t=NULL; _t=X291to_runnable((((T376*)C))->_type/*16*/,r376current_type(C)); /*IF*/if (((_t)==((void*)(NULL)))||(!(X291is_run_type(_t)))) { r683add_position(X291start_position((((T376*)C))->_type/*16*/)); /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms1_432); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } else { C->_type=_t; } /*FI*//*IF*/if (!(X291is_a((((T376*)C))->_type/*16*/,X662result_type((((T376*)C))->_writable/*12*/)))) { /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms2_432); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } /*FI*/} /*No:CREATION_CALL_2.compile_to_jvm0*/ void r376compile_to_jvm(T376* C){ T0* _t=NULL; _t=X291run_type((((T376*)C))->_type/*16*/); /*[IRF3.6compile_to_jvm0*/{T0* b1=_t; r355jvm_push_default(((T355*)(X291run_class(b1)))); }/*]*/ X291jvm_check_class_invariant(_t); X662jvm_assign((((T376*)C))->_writable/*12*/); } int r376is_pre_computable(T376* C){ int R=0; R=X662is_result((((T376*)C))->_writable/*12*/); return R; } int r376use_current(T376* C){ int R=0; R=X662use_current((((T376*)C))->_writable/*12*/); return R; } void r376check_writable(T376* C,T0* a1){ T0* _w=NULL; C->_run_compound=a1; _w=X662to_runnable((((T376*)C))->_writable/*12*/,r376current_type(C)); /*IF*/if ((_w)==((void*)(NULL))) { r683add_position(X662start_position((((T376*)C))->_writable/*12*/)); /*[IRF3.6fatal_error*/{T0* b1=((T0*)ms1_747); r683fatal_error(((T683*)(oBC364eh)),b1); }/*]*/ } else { C->_writable=_w; } /*FI*/} void r376error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } /*No:CREATION_CALL_2.fatal_error*/ /*No:CREATION_CALL_2.end_mark_comment*/ /*No:CREATION_CALL_2.afd_check*/ T0*oBC364code_attribute=NULL; /*No:E_REQUIRE.is_require_else*/ /*No:E_REQUIRE.empty*/ void r343from_runnable(T343* C,T0* a1){ C->_list=a1; C->_current_type=(((T348*)((T348*)(r608item(((T608*)((((T343*)C))->_list/*8*/)),1)))))->_current_type/*12*/; } void r343make(T343* C,T0* a1,T0* a2,T0* a3){ C->_start_position=a1; C->_header_comment=a2; C->_list=a3; } T0*oBC596points_false=NULL; /*No:E_REQUIRE.set_header_comment*/ /*No:E_REQUIRE.start_position*/ /*No:E_REQUIRE.list*/ /*No:E_REQUIRE.current_type*/ /*No:E_REQUIRE.header_comment*/ void r343compile_to_jvm(T343* C,int a1){ T0* _ca=NULL; int _i=0; int _point_true=0; /*IF*/if (((((T343*)C))->_list/*8*/)!=((void*)(NULL))) { _ca=oBC364code_attribute; r256check_opening(((T256*)_ca)); /*IF*/if (a1) { _i=1; while (!((_i)>((((T608*)((T608*)((((T343*)C))->_list/*8*/))))->_upper/*8*/))) { r348compile_to_jvm(((T348*)(r608item(((T608*)((((T343*)C))->_list/*8*/)),_i))),1); _i=(_i)+(1); } } else { /*[IRF3.3clear*/((((T226*)(((T226*)(oBC596points_false)))))->_upper)=(-(1)); /*]*/ _i=1; while (!((_i)>((((T608*)((T608*)((((T343*)C))->_list/*8*/))))->_upper/*8*/))) { r348compile_to_jvm(((T348*)(r608item(((T608*)((((T343*)C))->_list/*8*/)),_i))),0); r226add_last(((T226*)(oBC596points_false)),r256opcode_ifeq(((T256*)_ca))); _i=(_i)+(1); } /*[IRF3.4opcode_iconst_1*/r256opcode(((T256*)_ca),4,1); /*]*/ _point_true=r256opcode_goto(((T256*)_ca)); r256resolve_with(oBC596points_false); /*[IRF3.4opcode_iconst_0*/r256opcode(((T256*)_ca),3,1); /*]*/ r256resolve_u2_branch(_point_true); } /*FI*/r256check_closing(((T256*)_ca)); } /*FI*/} int r343use_current(T343* C){ int R=0; int _i=0; /*IF*/if (((((T343*)C))->_list/*8*/)!=((void*)(NULL))) { _i=(((T608*)((T608*)((((T343*)C))->_list/*8*/))))->_upper/*8*/; while (!((R)||((_i)==(0)))) { R=r348use_current(((T348*)(r608item(((T608*)((((T343*)C))->_list/*8*/)),_i)))); _i=(_i)-(1); } } /*FI*/return R; } /*No:E_REQUIRE.set_require_else*/ void r343afd_check(T343* C){ int _i=0; /*IF*/if (((((T343*)C))->_list/*8*/)!=((void*)(NULL))) { _i=(((T608*)((T608*)((((T343*)C))->_list/*8*/))))->_upper/*8*/; while (!((_i)==(0))) { r348afd_check(((T348*)(r608item(((T608*)((((T343*)C))->_list/*8*/)),_i)))); _i=(_i)-(1); } } /*FI*/} T0*oBC364unique_string=NULL; /*No:INFIX_NAME.set_is_frozen*/ void r454make(T454* C,T0* a1,T0* a2){ C->_to_string=r902item(a1); C->_start_position=a2; C->_to_key=r902for_infix((((T454*)C))->_to_string/*4*/); } /*No:INFIX_NAME.to_string*/ /*No:INFIX_NAME.start_position*/ /*No:INFIX_NAME.to_key*/ /*No:INFIX_NAME.is_frozen*/ void r454undefine_in(T454* C,T0* a1){ /*IF*/if ((((T454*)C))->_is_frozen/*12*/) { r454error((((T454*)C))->_start_position/*8*/,((T0*)ms1_776)); r605fatal_undefine(((T605*)a1),(T0*)C); } /*FI*/} void r454error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } T0* r454origin_base_class(T454* C){ T0* R=NULL; T0* _sp=NULL; _sp=(((T454*)C))->_start_position/*8*/; /*IF*/if ((_sp)!=((void*)(NULL))) { R=r627base_class(((T627*)_sp)); } /*FI*/return R; } /*No:ONCE_PROCEDURE.arguments*/ T0* r134try_to_undefine(T134* C,T0* a1,T0* a2){ T0* R=NULL; X776undefine_in(a1,a2); R=r134try_to_undefine_aux(C,a1,a2); /*IF*/if ((R)!=((void*)(NULL))) { /*X249*//*[IRF3.3set_clients*/((((T853*)(((T853*)R))))->_clients)=((((T134*)C))->_clients/*24*/); /*]*/ } else { r605fatal_undefine(((T605*)a2),a1); } /*FI*/return R; } T0*oBC359assertion_collector=NULL; /*No:ONCE_PROCEDURE.is_deferred*/ /*No:ONCE_PROCEDURE.fz_bad_assertion*/ T0* r134runnable(T0* a1,T0* a2,T0* a3){ T0* R=NULL; T0* _a=NULL; int _i=0; /*IF*/if (!(r608empty(((T608*)a1)))) { R=r608twin(((T608*)a1)); _i=(((T608*)((T608*)R)))->_upper/*8*/; while (!((_i)==(0))) { r604push(((T604*)(oBC364small_eiffel)),a3); _a=r348to_runnable(((T348*)(r608item(((T608*)R),_i))),a2); /*IF*/if ((_a)==((void*)(NULL))) { r134error(r348start_position(((T348*)(r608item(((T608*)R),_i)))),((T0*)ms57_470)); } else { /*[IRF3.6put*/{T608* C1=((T608*)R); T0* b1=_a; int b2=_i; ((((T608*)C1))->_storage/*0*/)[(b2)-((((T608*)C1))->_lower/*12*/)]=(b1); }/*]*/ } /*FI*/r604pop(((T604*)(oBC364small_eiffel))); _i=(_i)-(1); } } /*FI*/return R; } /*No:ONCE_PROCEDURE.rescue_compound*/ void r134add_into(T134* C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=r627base_class(((T627*)(X776start_position(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T134*)C))->_names/*8*/))))->_list/*0*/)),1)/*)*/)))); _i=1; while (!((_i)>(/*(IRF4.6count*/(((T855*)((T855*)((((T953*)((T953*)((((T134*)C))->_names/*8*/))))->_list/*0*/))))->_upper/*8*//*)*/))) { _fn=/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T134*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/; /*IF*/if (r237has(((T237*)a1),X776to_key(_fn))) { _fn=/*X359*/((T0*)/*(IRF4.6first_name*//*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T398*)((T398*)(r237at(((T237*)a1),X776to_key(_fn))))))->_names/*8*/))))->_list/*0*/)),1)/*)*//*)*/); r683add_position(X776start_position(_fn)); r683add_position(X776start_position(/*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T134*)C))->_names/*8*/))))->_list/*0*/)),_i)/*)*/)); r683error(((T683*)(oBC364eh)),((T0*)ms11_359)); /*[IRF3.6append*/{T0* b1=X776to_string(_fn); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683error(((T683*)(oBC364eh)),((T0*)ms67_470)); } else { r237put(((T237*)a1),(T0*)C,X776to_key(_fn)); } /*FI*/_i=(_i)+(1); } } /*No:ONCE_PROCEDURE.end_comment*/ T0*oBC359header_comment_memory=NULL; T0* r134try_to_undefine_aux(T134* C,T0* a1,T0* a2){ T0* R=NULL; {T853*n=malloc(sizeof(*n)); *n=M853; r853from_effective(n,a1,(((T134*)C))->_arguments/*28*/,(((T134*)C))->_require_assertion/*36*/,(((T134*)C))->_ensure_assertion/*40*/,a2); R=(T0*)n; } return R; } void r134make(T134* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7){ r134make_routine(C,a1,a2,a3,a4,a5); C->_local_vars=a6; C->_routine_body=a7; C->_use_current_state=1024; } /*No:ONCE_PROCEDURE.not_computed*/ /*No:ONCE_PROCEDURE.nb_errors*/ void r134make_routine(T134* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){ r134make_e_feature(C,a1,NULL); C->_header_comment=a4; C->_arguments=a2; C->_obsolete_mark=a3; C->_require_assertion=a5; } /*No:ONCE_PROCEDURE.local_vars*/ void r134set_header_comment(T134* C,T0* a1){ /*IF*/if (((a1)!=((void*)(NULL)))&&((/*(IRF4.6count*/r52count(((T52*)((((T393*)((T393*)a1)))->_list/*4*/)))/*)*/)>(1))) { C->_end_comment=a1; } /*FI*/} T0* r134start_position(T134* C){ T0* R=NULL; R=X776start_position(/*(IRF4.6first_name*//*(IRF4.6item*/r855item(((T855*)((((T953*)((T953*)((((T134*)C))->_names/*8*/))))->_list/*0*/)),1)/*)*//*)*/); return R; } T0* r134to_run_feature(T134* C,T0* a1,T0* a2){ T0* R=NULL; r134check_obsolete(C); {T869*n=malloc(sizeof(*n)); *n=M869; r869make(n,a1,a2,(T0*)C); R=(T0*)n; } return R; } /*No:ONCE_PROCEDURE.ensure_assertion*/ /*No:ONCE_PROCEDURE.code_require*/ T0* r134run_ensure(T0* a1){ T0* R=NULL; T0* _r=NULL; r608clear(((T608*)(oBC359assertion_collector))); /*[IRF3.3clear*/{T0* _default_item=NULL; ((((T56*)(((T56*)(oBC359header_comment_memory)))))->_item)=(_default_item); }/*]*/ r605collect_for(((T605*)(X291base_class(/*X496*/((T0*)(((T832*)((T832*)a1)))->_current_type/*4*/)))),1002,/*X496*/((T0*)(((T832*)((T832*)a1)))->_name/*16*/)); _r=r134runnable(oBC359assertion_collector,/*X496*/((T0*)(((T832*)((T832*)a1)))->_current_type/*4*/),a1); /*IF*/if ((_r)!=((void*)(NULL))) { {T633*n=malloc(sizeof(*n)); *n=M633; r633from_runnable(n,_r); R=(T0*)n; } /*[IRF3.3set_header_comment*/((((T633*)(((T633*)R))))->_header_comment)=((((T56*)((T56*)(oBC359header_comment_memory))))->_item/*0*/); /*]*/ /*[IRF3.3clear*/{T0* _default_item=NULL; ((((T56*)(((T56*)(oBC359header_comment_memory)))))->_item)=(_default_item); }/*]*/ } /*FI*/return R; } T0* r134run_require(T0* a1){ T0* R=NULL; T0* _ar=NULL; T0* _hc=NULL; T0* _er=NULL; T0* _r=NULL; int _i=0; r522clear(((T522*)(oBC359require_collector))); r605collect_for(((T605*)(X291base_class(/*X496*/((T0*)(((T832*)((T832*)a1)))->_current_type/*4*/)))),1001,/*X496*/((T0*)(((T832*)((T832*)a1)))->_name/*16*/)); /*IF*/if (!(r522empty(((T522*)(oBC359require_collector))))) { _i=1; while (!((_i)>((((T522*)((T522*)(oBC359require_collector))))->_upper/*8*/))) { _er=r522item(((T522*)(oBC359require_collector)),_i); _hc=(((T343*)((T343*)_er)))->_header_comment/*4*/; /*IF*/if (!(/*(IRF4.7empty*/((((T343*)((T343*)_er)))->_list/*8*/)==(NULL)/*)*/)) { _r=r134runnable((((T343*)((T343*)_er)))->_list/*8*/,/*X496*/((T0*)(((T832*)((T832*)a1)))->_current_type/*4*/),a1); /*IF*/if ((_r)!=((void*)(NULL))) { {T343*n=malloc(sizeof(*n)); *n=M343; r343from_runnable(n,_r); _er=(T0*)n; } /*[IRF3.3set_header_comment*/((((T343*)(((T343*)_er))))->_header_comment)=(_hc); /*]*/ /*IF*/if ((_ar)==((void*)(NULL))) { _ar=se_ma522(1,_er); } else { r522add_last(((T522*)_ar),_er); } /*FI*/} /*FI*/} /*FI*/_i=(_i)+(1); } /*IF*/if ((_ar)!=((void*)(NULL))) { {T567*n=malloc(sizeof(*n)); *n=M567; /*[IRF3.3make*/((((T567*)(n)))->_list)=(_ar); /*]*/ R=(T0*)n; } } /*FI*/} /*FI*/return R; } /*No:ONCE_PROCEDURE.result_type*/ /*No:ONCE_PROCEDURE.fz_03*/ /*No:ONCE_PROCEDURE.em1*/ /*No:ONCE_PROCEDURE.obsolete_mark*/ /*No:ONCE_PROCEDURE.set_clients*/ /*No:ONCE_PROCEDURE.em2*/ /*No:ONCE_PROCEDURE.names*/ /*No:ONCE_PROCEDURE.require_assertion*/ /*No:ONCE_PROCEDURE.use_current_state*/ /*No:ONCE_PROCEDURE.code_ensure*/ void r134set_rescue_compound(T134* C,T0* a1){ /*IF*/if (((a1)!=((void*)(NULL)))&&(/*(IRF4.1is_deferred*/0/*)*/)) { r134error(r134start_position(C),((T0*)ms6_368)); } /*FI*/C->_rescue_compound=a1; } int r134can_hide(T134* C,T0* a1,T0* a2){ int R=0; /*IF*/if (((((T134*)C))->_result_type/*12*/)!=((void*)(/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/)))) { /*IF*/if ((((((T134*)C))->_result_type/*12*/)==((void*)(NULL)))||((/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/))==((void*)(NULL)))) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms5_359)); } /*FI*/} /*FI*//*IF*/if (((((T134*)C))->_arguments/*28*/)!=((void*)(X359arguments(a1)))) { /*IF*/if ((((((T134*)C))->_arguments/*28*/)==((void*)(NULL)))||((X359arguments(a1))==((void*)(NULL)))) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms6_359)); } else if ((/*(IRF4.6count*/(((T65*)((T65*)((((T31*)((T31*)((((T134*)C))->_arguments/*28*/))))->_flat_list/*12*/))))->_upper/*12*//*)*/)!=(/*(IRF4.6count*/(((T65*)((T65*)((((T31*)((T31*)(X359arguments(a1)))))->_flat_list/*12*/))))->_upper/*12*//*)*/)) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms7_359)); } /*FI*/} /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) { /*IF*/if (((((T134*)C))->_result_type/*12*/)!=((void*)(NULL))) { /*IF*/if (!(X291is_a_in((((T134*)C))->_result_type/*12*/,/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/),a2))) { /*[IRF3.6append*/{T0* b1=((T0*)ms13_359); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T355*)((T355*)a2)))->_current_type/*0*/); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683error(((T683*)(oBC364eh)),((T0*)ms67_470)); } /*FI*/} /*FI*/} /*FI*//*IF*/if ((/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0)) { /*IF*/if (((((T134*)C))->_arguments/*28*/)!=((void*)(NULL))) { /*IF*/if (!(r31is_a_in(((T31*)((((T134*)C))->_arguments/*28*/)),X359arguments(a1),a2))) { r683add_position(X359start_position(a1)); r683add_position(r134start_position(C)); /*[IRF3.6append*/{T0* b1=((T0*)ms13_359); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=X291run_time_mark((((T355*)((T355*)a2)))->_current_type/*0*/); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r683error(((T683*)(oBC364eh)),((T0*)ms67_470)); } /*FI*/} /*FI*/} /*FI*/R=(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0); return R; } /*No:ONCE_PROCEDURE.header_comment*/ /*No:ONCE_PROCEDURE.routine_body*/ int r134is_merge_with(T134* C,T0* a1,T0* a2){ int R=0; /*IF*/if (((((T134*)C))->_result_type/*12*/)!=((void*)(/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/)))) { /*IF*/if ((((((T134*)C))->_result_type/*12*/)==((void*)(NULL)))||((/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/))==((void*)(NULL)))) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms2_359)); } /*FI*/} /*FI*//*IF*/if (((((T134*)C))->_arguments/*28*/)!=((void*)(X359arguments(a1)))) { /*IF*/if ((((((T134*)C))->_arguments/*28*/)==((void*)(NULL)))||((X359arguments(a1))==((void*)(NULL)))) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms3_359)); } else if ((/*(IRF4.6count*/(((T65*)((T65*)((((T31*)((T31*)((((T134*)C))->_arguments/*28*/))))->_flat_list/*12*/))))->_upper/*12*//*)*/)!=(/*(IRF4.6count*/(((T65*)((T65*)((((T31*)((T31*)(X359arguments(a1)))))->_flat_list/*12*/))))->_upper/*12*//*)*/)) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms4_359)); } /*FI*/} /*FI*//*IF*/if (((((T134*)C))->_result_type/*12*/)!=((void*)(NULL))) { /*IF*/if (!(X291is_a_in((((T134*)C))->_result_type/*12*/,/*X359*/((T0*)(((T398*)((T398*)a1)))->_result_type/*12*/),a2))) { r683error(((T683*)(oBC364eh)),((T0*)ms12_359)); } /*FI*/} /*FI*//*IF*/if (((((T134*)C))->_arguments/*28*/)!=((void*)(NULL))) { /*IF*/if (!(r31is_a_in(((T31*)((((T134*)C))->_arguments/*28*/)),X359arguments(a1),a2))) { r683add_position(X359start_position(a1)); r134error(r134start_position(C),((T0*)ms12_359)); } /*FI*/} /*FI*/R=(/*(IRF4.9nb_errors*/(((T683*)((T683*)(oBC364eh))))->_nb_errors/*0*//*)*/)==(0); return R; } /*No:ONCE_PROCEDURE.fz_dot*/ /*No:ONCE_PROCEDURE.set_ensure_assertion*/ /*No:ONCE_PROCEDURE.first_name*/ /*No:ONCE_PROCEDURE.clients*/ void r134collect_for(T134* C,int a1){ /*IF*/if ((a1)==(1001)) { /*IF*/if (((((T134*)C))->_require_assertion/*36*/)!=((void*)(NULL))) { /*IF*/if (!(r522fast_has(((T522*)(oBC359require_collector)),(((T134*)C))->_require_assertion/*36*/))) { r522add_last(((T522*)(oBC359require_collector)),(((T134*)C))->_require_assertion/*36*/); } /*FI*/} /*FI*/} else { /*IF*/if (((((T134*)C))->_ensure_assertion/*40*/)!=((void*)(NULL))) { /*[IRF3.3set_item*/((((T56*)(((T56*)(oBC359header_comment_memory)))))->_item)=((((T633*)((T633*)((((T134*)C))->_ensure_assertion/*40*/))))->_header_comment/*4*/); /*]*/ r633add_into(((T633*)((((T134*)C))->_ensure_assertion/*40*/)),oBC359assertion_collector); } /*FI*/} /*FI*/} void r134error(T0* a1,T0* a2){ r683add_position(a1); r683error(((T683*)(oBC364eh)),a2); } /*No:ONCE_PROCEDURE.base_class*/ T0*oBC359require_collector=NULL; void r134make_e_feature(T134* C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; } void r134check_obsolete(T134* C){ /*IF*/if (!((((T604*)((T604*)(oBC364small_eiffel))))->_short_flag/*4*/)) { /*IF*/if (((((T134*)C))->_obsolete_mark/*32*/)!=((void*)(NULL))) { /*[IRF3.6append*/{T0* b1=((T0*)ms7_368); r7append(((T7*)(oBC683explanation)),b1); }/*]*/ /*[IRF3.6append*/{T0* b1=(((T805*)((T805*)((((T134*)C))->_obsolete_mark/*32*/))))->_to_string/*16*/; r7append(((T7*)(oBC683explanation)),b1); }/*]*/ r134warning(r134start_position(C),((T0*)ms137_470)); } /*FI*/} /*FI*/} void r134warning(T0* a1,T0* a2){ r683add_position(a1); r683warning(((T683*)(oBC364eh)),a2); }