This is pretty16.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 "pretty.h" /*EIFFEL_PARSER*/int rT52a_constant(T52 *C){ int R=0; T0* _fn=NULL; T0* _e_current=NULL; /*IF*/if (rT52a_identifier(C)) { R=1; _fn=rT71to_feature_name((T71*)rT52tmp_name()); {T92 *n=((T92*)se_new(92)); rT92make(n,/*XrT*FEATURE_NAME*/((T68*)_fn)->_start_position,0); _e_current=(T0 *)n;} {T165 *n=((T165*)se_new(165)); rT165make(n,_e_current,_fn); C->_last_expression=(T0 *)n;}} else if (rT52a_character_constant(C)) { R=1; C->_last_expression=(C)->_last_character_constant; } else if (rT52a_integer_constant(C)) { R=1; C->_last_expression=(C)->_last_integer_constant; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_conditional(T52 *C){ int R=0; T0* _ifthenelse=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms73_52)) { R=1; {T224 *n=((T224*)se_new(224)); /*[IRF3:make*//*AW*/(n)->_start_position=(rT52pos((C)->_start_line,(C)->_start_column));/*]*/ _ifthenelse=(T0 *)n;} rT52a_then_part_list(C,_ifthenelse); /*IF*/if (rT52a_keyword(C,(T0 *)ms114_27)) { /*[IRF3:set_else_compound*//*AW*/((T224*)_ifthenelse)->_else_compound=(rT52a_compound2(C,(T0 *)ms74_52,(T0 *)ms115_27));/*]*/ } else { /*IF*/if (!(rT52a_keyword(C,(T0 *)ms115_27))) { rT52wcp(C,(T0 *)ms75_52); } /*FI*/} /*FI*/C->_last_instruction=_ifthenelse; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_boolean_constant(T52 *C){ int R=0; /*IF*/if (rT52a_keyword(C,(T0 *)ms51_52)) { {T75 *n=((T75*)se_new(75)); /*[IRF3:make*//*AW*/(n)->_start_position=(rT52pos((C)->_start_line,(C)->_start_column));/*]*/ C->_last_boolean_constant=(T0 *)n;}R=1; } else if (rT52a_keyword(C,(T0 *)ms52_52)) { {T76 *n=((T76*)se_new(76)); /*[IRF3:make*//*AW*/(n)->_start_position=(rT52pos((C)->_start_line,(C)->_start_column));/*]*/ C->_last_boolean_constant=(T0 *)n;}R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_then_part(T52 *C,T0* a1){ int R=0; T0* _expression=NULL; /*IF*/if (rT52a_expression(C)) { R=1; _expression=XrT70add_comment((C)->_last_expression,rT52get_comments(C)); /*IF*/if (!(rT52a_keyword(C,(T0 *)ms120_27))) { rT52wcp(C,(T0 *)ms187_52); } /*FI*/rT224add_if_then((T224*)a1,_expression,rT52a_compound1(C,(T0 *)ms188_52)); } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_then_part_list(T52 *C,T0* a1){ /*IF*/if (!(rT52a_then_part(C,a1))) { rT52fcp(C,(T0 *)ms184_52); } /*FI*/while (!(!(rT52a_keyword(C,(T0 *)ms185_52)))) { /*IF*/if (!(rT52a_then_part(C,a1))) { rT52fcp(C,(T0 *)ms186_52); } /*FI*/} }/*EIFFEL_PARSER*/T0* rT52get_comments(T52 *C){ T0* R=NULL; /*IF*/if (((int)(C)->_last_comments)) { R=(C)->_last_comments; C->_last_comments=NULL; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_parent(T52 *C){ int R=0; /*IF*/if (rT52a_class_type(C)) { R=1; /*IF*/if (rT7is_equal((T7*)((T49*)rT52current_class_name(C))->_to_string,((T49*)XrT60base_class_name((C)->_last_class_type))->_to_string)) { rT52error(XrT60start_position((C)->_last_class_type),(T0 *)ms137_52); } /*FI*/{T118 *n=((T118*)se_new(118)); rT118make(n,(C)->_last_class_type); C->_last_parent=(T0 *)n;} /*IF*/if (rT52a_keyword(C,(T0 *)ms138_52)) { rT52a_rename_list(C); /*IF*/if (((C)->_cc)==('\73')) { rT52wcp(C,(T0 *)ms139_52); C->_ok=rT52skip1(C,'\73'); } /*FI*/} /*FI*/rT52a_new_export_list(C); /*IF*/if (rT52a_keyword(C,(T0 *)ms140_52)) { rT52a_undefine_list(C); } /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms141_52)) { rT52a_redefine_list(C); } /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms142_52)) { rT52a_select_list(C); } /*FI*//*IF*/if (((((rT52a_keyword(C,(T0 *)ms143_52))||(rT52a_keyword(C,(T0 *)ms144_52)))||(rT52a_keyword(C,(T0 *)ms145_52)))||(rT52a_keyword(C,(T0 *)ms146_52)))||(rT52a_keyword(C,(T0 *)ms147_52))) { rT46add_position(rT52pos((C)->_start_line,(C)->_start_column)); rT52fatal_error((T0 *)ms148_52); } /*FI*/C->_ok=rT52a_keyword(C,(T0 *)ms115_27); } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_parent_list(T52 *C,T0* a1,T0* a2){ T0* _list=NULL; while (!(!(rT52a_parent(C)))) { /*IF*/if (!(_list)) { _list=ma(130,0,1,(C)->_last_parent); } else { rT130add_last((T130*)_list,(C)->_last_parent); } /*FI*/C->_ok=rT52skip1(C,'\73'); /*[IRF3:set_comment*//*AW*/((T118*)(C)->_last_parent)->_comment=(rT52get_comments(C));/*]*/ } /*IF*/if (((((int)a2))||(((int)_list)))) { /*IF*/if (!(_list)) { /*IF*/if (!(((T51*)(C)->_last_base_class)->_heading_comment2)) { /*[IRF3:set_heading_comment2*//*AW*/((T51*)(C)->_last_base_class)->_heading_comment2=(a2);/*]*/ } else { rT61append((T61*)((T51*)(C)->_last_base_class)->_heading_comment2,a2); } /*FI*/} else { rT51set_parent_list((T51*)(C)->_last_base_class,a1,a2,_list); } /*FI*/} /*FI*/}/*EIFFEL_PARSER*/int rT52a_when_part(T52 *C,T0* a1){ int R=0; T0* _constant=NULL; T0* _e_when=NULL; int _state=0; /*IF*/if (rT52a_keyword(C,(T0 *)ms193_52)) { R=1; {T232 *n=((T232*)se_new(232)); rT232make(n,rT52pos((C)->_start_line,(C)->_start_column),rT52get_comments(C)); _e_when=(T0 *)n;} while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l52; goto l53; l52: ; /*IF*/if (rT52a_constant(C)) { _constant=(C)->_last_expression; _state=1; } else if (rT52a_keyword(C,(T0 *)ms120_27)) { /*IF*/if (((int)_constant)) { rT232add_value((T232*)_e_when,_constant); } /*FI*//*[IRF3:set_compound*//*AW*/((T232*)_e_when)->_compound=(rT52a_compound1(C,(T0 *)ms194_52));/*]*/ rT231add_when((T231*)a1,_e_when); _state=4; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms204_52); C->_ok=rT52skip1(C,'\54'); } else { rT52fcp(C,(T0 *)ms201_52); _state=4; } /*FI*/goto l51; l53: ; if (1 == iv1) goto l54; goto l55; l54: ; /*IF*/if (rT52a_keyword(C,(T0 *)ms120_27)) { /*IF*/if (((int)_constant)) { rT232add_value((T232*)_e_when,_constant); } /*FI*//*[IRF3:set_compound*//*AW*/((T232*)_e_when)->_compound=(rT52a_compound1(C,(T0 *)ms195_52));/*]*/ rT231add_when((T231*)a1,_e_when); _state=4; } else if (rT52skip2(C,'\56','\56')) { _state=2; } else if (rT52skip1(C,'\54')) { rT232add_value((T232*)_e_when,_constant); _constant=NULL; _state=0; } else { rT52fcp(C,(T0 *)ms201_52); _state=4; } /*FI*/goto l51; l55: ; if (2 == iv1) goto l56; goto l57; l56: ; /*IF*/if (rT52a_constant(C)) { rT232add_slice((T232*)_e_when,_constant,(C)->_last_expression); _constant=NULL; _state=3; } else { rT52fcp(C,(T0 *)ms201_52); _state=4; } /*FI*/goto l51; l57: ; /*IF*/if (rT52skip1(C,'\54')) { _state=0; } else if (rT52a_keyword(C,(T0 *)ms120_27)) { /*[IRF3:set_compound*//*AW*/((T232*)_e_when)->_compound=(rT52a_compound1(C,(T0 *)ms196_52));/*]*/ rT231add_when((T231*)a1,_e_when); _state=4; } else if (rT52a_constant(C)) { _constant=(C)->_last_expression; rT52warning(rT71start_position((T71*)rT52tmp_name()),(T0 *)ms202_52); _state=1; } else { rT52fcp(C,(T0 *)ms201_52); _state=4; } /*FI*/ l51: ; } } } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_select_list(T52 *C){ /*IF*/if (rT52a_feature_list(C)) { rT118set_select((T118*)(C)->_last_parent,(C)->_last_feature_list); } /*FI*/}/*EIFFEL_PARSER*/int rT52a_unary(T52 *C){ int R=0; /*IF*/if (rT52a_keyword(C,(T0 *)ms118_27)) { {T68 *n=((T68*)se_new(68)); rT68make(n,(T0 *)ms118_27,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_prefix=(T0 *)n;} R=1; } else if (rT52skip1(C,'\53')) { {T68 *n=((T68*)se_new(68)); rT68make(n,(T0 *)ms95_27,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_prefix=(T0 *)n;} R=1; } else if (rT52skip1(C,'\55')) { {T68 *n=((T68*)se_new(68)); rT68make(n,(T0 *)ms96_27,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_prefix=(T0 *)n;} R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_rename_pair(T52 *C){ int R=0; T0* _rename_pair=NULL; T0* _name1=NULL; /*IF*/if (rT52a_identifier(C)) { _name1=rT71to_feature_name((T71*)rT52tmp_name()); /*IF*/if (rT52a_keyword(C,(T0 *)ms153_52)) { /*IF*/if (rT52a_identifier(C)) { R=1; /*IF*/if (rT7is_equal((T7*)((T71*)rT52tmp_name())->_to_string,/*XrT*FEATURE_NAME*/((T68*)_name1)->_to_string)) { rT52warning(rT71start_position((T71*)rT52tmp_name()),(T0 *)ms154_52); } else { {T119 *n=((T119*)se_new(119)); rT119make(n,_name1,rT71to_feature_name((T71*)rT52tmp_name())); _rename_pair=(T0 *)n;} rT118add_rename((T118*)(C)->_last_parent,_rename_pair); } /*FI*/} else { rT52fcp(C,(T0 *)ms155_52); } /*FI*/} else { rT52go_back(C,/*XrT*FEATURE_NAME*/((T68*)_name1)->_start_position); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_rename_list(T52 *C){ while (!(!(rT52a_rename_pair(C)))) { C->_ok=rT52skip1(C,'\54'); } }/*EIFFEL_PARSER*/T0* rT52to_call(/*C*/T0* a1,T0* a2,T0* a3){ T0* R=NULL; /*IF*/if (!(a2)) { R=a1; } else if (!(a3)) { {T165 *n=((T165*)se_new(165)); rT165make(n,a1,a2); R=(T0 *)n;}} else if ((rT173count((T173*)a3))==(1)) { {T177 *n=((T177*)se_new(177)); rT177make(n,a1,a2,a3); R=(T0 *)n;}} else { {T178 *n=((T178*)se_new(178)); rT178make(n,a1,a2,a3); R=(T0 *)n;}} /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_e10(T52 *C){ int R=0; /*IF*/if (rT52a_strip(C)) { R=1; } else if (rT52skip1(C,'\50')) { R=1; /*IF*/if (rT52a_expression(C)) { /*IF*/if (rT52skip1(C,'\51')) { rT52a_r10(C,0,(C)->_last_expression,NULL,NULL); } else { rT52fcp(C,(T0 *)ms95_52); } /*FI*/} else { rT52fcp(C,(T0 *)ms96_52); } /*FI*/} else if (rT52a_manifest_constant(C)) { C->_last_expression=(C)->_last_manifest_constant; R=1; /*IF*/if (rT52skip1unless2(C,'\56','\56')) { rT52wcp(C,(T0 *)ms97_52); rT52a_after_a_dot(C,0,(C)->_last_expression); } /*FI*/} else if (rT52a_identifier(C)) { R=1; /*IF*/if (((((rT52a_result(C))||(rT52a_current(C)))||(rT52a_void(C)))||(rT52a_local_variable(C)))||(rT52a_argument(C))) { rT52a_r10(C,0,(C)->_last_expression,NULL,NULL); } else { rT52a_function_call(C); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_assignment_aux(T52 *C,int a1){ T0* _rhs=NULL; T0* _writable=NULL; /*IF*/if (rT52a_current(C)) { rT46add_position(XrT70start_position((C)->_last_expression)); rT52fatal_error((T0 *)ms38_52); } else if (rT52a_void(C)) { rT46add_position(rT71start_position((T71*)rT52tmp_name())); rT52fatal_error((T0 *)ms39_52); } else if (rT52a_argument(C)) { rT46add_position(XrT70start_position((C)->_last_expression)); rT52fatal_error((T0 *)ms40_52); } else { /*IF*/if (rT7same_as((T7*)(T0 *)ms119_27,((T71*)rT52tmp_name())->_to_string)) { /*IF*/if (!((C)->_function_type)) { rT52error(rT71start_position((T71*)rT52tmp_name()),(T0 *)ms211_52); } /*FI*/_writable=rT71to_e_result((T71*)rT52tmp_name()); } else if (rT52a_local_variable(C)) { _writable=(C)->_last_expression; } else { _writable=rT71to_feature_name((T71*)rT52tmp_name()); } /*FI*//*IF*/if (rT52a_expression(C)) { _rhs=(C)->_last_expression; /*IF*/if (a1) { {T254 *n=((T254*)se_new(254)); rT254make(n,_writable,_rhs); C->_last_instruction=(T0 *)n;}} else { {T255 *n=((T255*)se_new(255)); rT255make(n,_writable,_rhs); C->_last_instruction=(T0 *)n;}} /*FI*/} else { rT52fcp(C,(T0 *)ms41_52); } /*FI*/} /*FI*/}/*EIFFEL_PARSER*/int rT52a_assignment_or_call(T52 *C){ int R=0; /*IF*/if ((rT52skip1(C,'\50'))&&(rT52a_expression(C))) { R=1; /*IF*/if (rT52skip1(C,'\51')) { rT52a_r10(C,1,(C)->_last_expression,NULL,NULL); } else { rT52fcp(C,(T0 *)ms37_52); } /*FI*/} else if (rT52a_identifier(C)) { R=1; /*IF*/if (rT52skip2(C,'\72','\75')) { rT52a_assignment_aux(C,1); } else if (rT52skip2(C,'\77','\75')) { rT52a_assignment_aux(C,0); } else if ((((rT52a_current(C))||(rT52a_result(C)))||(rT52a_local_variable(C)))||(rT52a_argument(C))) { rT52a_r10(C,1,(C)->_last_expression,NULL,NULL); } else { rT52a_procedure_call(C); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_assertion(T52 *C){ T0* R=NULL; int _state=0; T0* _assertion=NULL; T0* _expression=NULL; T0* _tag=NULL; while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l59; goto l60; l59: ; /*IF*/if (((C)->_cc)==('\73')) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); /*IF*/if (((int)(C)->_last_comments)) { {T66 *n=((T66*)se_new(66)); rT66make(n,NULL,NULL,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/} /*FI*/} else if (rT52a_tag_mark(C)) { _tag=(C)->_last_tag_mark; _state=1; } else if (rT52a_expression(C)) { _expression=(C)->_last_expression; _state=2; } else { _state=4; } /*FI*/goto l58; l60: ; if (1 == iv1) goto l61; goto l62; l61: ; /*IF*/if (rT52skip1(C,'\73')) { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,NULL,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_state=0; } else if (rT52a_tag_mark(C)) { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,NULL,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_tag=(C)->_last_tag_mark; } else if (rT52a_expression(C)) { _expression=(C)->_last_expression; _state=3; } else { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,NULL,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_state=4; } /*FI*/goto l58; l62: ; if (2 == iv1) goto l63; goto l64; l63: ; /*IF*/if (rT52skip1(C,'\73')) { {T66 *n=((T66*)se_new(66)); rT66make(n,NULL,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_state=0; } else if (rT52a_tag_mark(C)) { {T66 *n=((T66*)se_new(66)); rT66make(n,NULL,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_tag=(C)->_last_tag_mark; _state=1; } else if (rT52a_expression(C)) { {T66 *n=((T66*)se_new(66)); rT66make(n,NULL,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_expression=(C)->_last_expression; _state=2; } else { {T66 *n=((T66*)se_new(66)); rT66make(n,NULL,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_state=4; } /*FI*/goto l58; l64: ; /*IF*/if (rT52skip1(C,'\73')) { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_state=0; } else if (rT52a_tag_mark(C)) { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_tag=(C)->_last_tag_mark; _state=1; } else if (rT52a_expression(C)) { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_expression=(C)->_last_expression; _state=2; } else { {T66 *n=((T66*)se_new(66)); rT66make(n,_tag,_expression,rT52get_comments(C)); _assertion=(T0 *)n;} /*IF*/if (!(R)) { R=ma(160,0,1,_assertion); } else { rT160add_last((T160*)R,_assertion); } /*FI*/_state=4; } /*FI*/ l58: ; } } return R; } /*EIFFEL_PARSER*/void rT52a_formal_arg_list(T52 *C){ int _state=0; T0* _list=NULL; T0* _declaration=NULL; T0* _name_list=NULL; T0* _name=NULL; T0* _sp=NULL; C->_arguments=NULL; while (!((_state)>(5))) { {int iv1=_state; if (0 == iv1) goto l66; goto l67; l66: ; /*IF*/if (rT52skip1(C,'\50')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _state=1; } else { _state=6; } /*FI*/goto l65; l67: ; if (1 == iv1) goto l68; goto l69; l68: ; /*IF*/if (rT52a_identifier(C)) { _name=rT71to_argument_name_declaration((T71*)rT52tmp_name()); _state=2; } else if (rT52skip1(C,'\51')) { _state=6; } else { _state=7; } /*FI*/goto l65; l69: ; if (2 == iv1) goto l70; goto l71; l70: ; /*IF*/if (rT52skip1(C,'\72')) { /*IF*/if (((int)_name_list)) { rT97add_last((T97*)_name_list,_name); _name=NULL; } /*FI*/_state=4; } else { C->_ok=rT52skip1(C,'\54'); /*IF*/if (!(_name_list)) { _name_list=ma(97,0,1,_name); } else { rT97add_last((T97*)_name_list,_name); } /*FI*/_name=NULL; _state=3; } /*FI*/goto l65; l71: ; if (3 == iv1) goto l72; goto l73; l72: ; /*IF*/if (rT52a_identifier(C)) { _name=rT71to_argument_name_declaration((T71*)rT52tmp_name()); _state=2; } else if (((((C)->_cc)==('\54'))||(((C)->_cc)==('\73')))) { rT52wcp(C,(T0 *)ms210_52); C->_ok=(rT52skip1(C,'\54'))||(rT52skip1(C,'\73')); } else { _state=7; } /*FI*/goto l65; l73: ; if (4 == iv1) goto l74; goto l75; l74: ; /*IF*/if (rT52a_type(C)) { /*IF*/if (((int)_name_list)) { {T142 *n=((T142*)se_new(142)); rT142make(n,_name_list,(C)->_last_type); _declaration=(T0 *)n;}_name_list=NULL; } else { {T144 *n=((T144*)se_new(144)); rT144make(n,_name,(C)->_last_type); _declaration=(T0 *)n;}_name=NULL; } /*FI*//*IF*/if (!(_list)) { _list=ma(145,0,1,_declaration); } else { rT145add_last((T145*)_list,_declaration); } /*FI*/_declaration=NULL; _state=5; } else { _state=7; } /*FI*/goto l65; l75: ; /*IF*/if (rT52skip1(C,'\51')) { _state=6; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms13_52); C->_ok=rT52skip1(C,'\54'); _state=1; } else { C->_ok=rT52skip1(C,'\73'); _state=1; } /*FI*/ l65: ; } } /*IF*/if ((_state)==(7)) { rT52fcp(C,(T0 *)ms14_52); } else if ((((int)_sp))&&(!(_list))) { rT52warning(_sp,(T0 *)ms15_52); } else if (((int)_sp)) { {T95 *n=((T95*)se_new(95)); rT95make(n,_sp,_list); C->_arguments=(T0 *)n;} /*[IRF3:set_arguments*//*AW*/((T136*)oRBC52tmp_feature)->_arguments=((C)->_arguments);/*]*/ } /*FI*/}/*EIFFEL_PARSER*/void rT52a_undefine_list(T52 *C){ /*IF*/if (rT52a_feature_list(C)) { rT118set_undefine((T118*)(C)->_last_parent,(C)->_last_feature_list); } /*FI*/}/*EIFFEL_PARSER*/int rT52a_prefix(T52 *C){ int R=0; /*IF*/if (rT52a_keyword(C,(T0 *)ms149_52)) { R=1; /*IF*/if (((C)->_cc)==('\42')) { rT52next_char(C); } else { rT52wcp(C,(T0 *)ms150_52); } /*FI*//*IF*/if (rT52a_unary(C)) { } else if (rT52a_free_operator(C)) { C->_last_prefix=rT71to_prefix_name((T71*)rT52tmp_operator()); } else { rT52fcp(C,(T0 *)ms151_52); } /*FI*//*IF*/if (!(rT52skip1(C,'\42'))) { rT52wcp(C,(T0 *)ms152_52); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_formal_generic_list(T52 *C){ int _state=0; T0* _list=NULL; T0* _fga=NULL; T0* _constraint=NULL; T0* _name=NULL; T0* _sp=NULL; C->_formal_generic_list=NULL; while (!((_state)>(4))) { {int iv1=_state; if (0 == iv1) goto l77; goto l78; l77: ; /*IF*/if (rT52skip1(C,'\133')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _state=1; } else { _state=5; } /*FI*/goto l76; l78: ; if (1 == iv1) goto l79; goto l80; l79: ; /*IF*/if (rT52a_base_class_name(C)) { _name=(C)->_last_class_name; _state=2; } else { _state=6; } /*FI*/goto l76; l80: ; if (2 == iv1) goto l81; goto l82; l81: ; /*IF*/if (rT52skip2(C,'\55','\76')) { _state=4; } else if ((((C)->_cc)==('\54'))||(((C)->_cc)==('\135'))) { {T86 *n=((T86*)se_new(86)); rT86make(n,_name,_constraint); _fga=(T0 *)n;} _name=NULL; _constraint=NULL; /*IF*/if (!(_list)) { _list=ma(88,0,1,_fga); } else { rT88add_last((T88*)_list,_fga); } /*FI*/_fga=NULL; /*IF*/if (rT52skip1(C,'\54')) { _state=1; } else { C->_ok=rT52skip1(C,'\135'); _state=5; } /*FI*/} else { _state=6; } /*FI*/goto l76; l82: ; if (3 == iv1) goto l83; goto l84; l83: ; /*IF*/if ((((C)->_cc)==('\54'))||(((C)->_cc)==('\135'))) { {T86 *n=((T86*)se_new(86)); rT86make(n,_name,_constraint); _fga=(T0 *)n;} _name=NULL; _constraint=NULL; /*IF*/if (!(_list)) { _list=ma(88,0,1,_fga); } else { rT88add_last((T88*)_list,_fga); } /*FI*/_fga=NULL; /*IF*/if (rT52skip1(C,'\54')) { _state=1; } else { C->_ok=rT52skip1(C,'\135'); _state=5; } /*FI*/} else { _state=6; } /*FI*/goto l76; l84: ; /*IF*/if (rT52a_class_type(C)) { _constraint=(C)->_last_class_type; _state=3; } else { rT52fcp(C,(T0 *)ms113_52); _state=6; } /*FI*/ l76: ; } } /*IF*/if ((_state)==(6)) { } else if ((((int)_sp))&&(!(_list))) { rT52warning(_sp,(T0 *)ms114_52); } else if (((int)_sp)) { {T87 *n=((T87*)se_new(87)); rT87make(n,_sp,_list); C->_formal_generic_list=(T0 *)n;} /*[IRF3:set_formal_generic_list*//*AW*/((T51*)(C)->_last_base_class)->_formal_generic_list=((C)->_formal_generic_list);/*]*/ } /*FI*/}/*EIFFEL_PARSER*/void rT52fatal_error(/*C*/T0* a1){ rT46fatal_error(a1); }/*EIFFEL_PARSER*/void rT52a_function_call(T52 *C){ T0* _e_current=NULL; T0* _fn=NULL; _fn=rT71to_feature_name((T71*)rT52tmp_name()); {T92 *n=((T92*)se_new(92)); rT92make(n,/*XrT*FEATURE_NAME*/((T68*)_fn)->_start_position,0); _e_current=(T0 *)n;} rT52a_r10(C,0,_e_current,_fn,rT52a_actuals(C)); }/*EIFFEL_PARSER*/int rT52a_keyword(T52 *C,T0* a1){ int R=0; int _i=0; C->_start_line=(C)->_line; C->_start_column=(C)->_column; while (!(((_i)==(((T7*)a1)->_count))||(!(rT3same_as((C)->_cc,rT7item((T7*)a1,(_i)+(1))))))) { _i=(_i)+(1); rT52next_char(C); } /*IF*/if ((_i)==(((T7*)a1)->_count)) { {int iv1=(C)->_cc; if ((9<=iv1)&&(iv1<=10)) goto l86; if (32 == iv1) goto l86; if (45 == iv1) goto l86; goto l87; l86: ; R=1; C->_last_keyword=a1; rT52skip_comments(C); goto l85; l87: ; if ((48<=iv1)&&(iv1<=57)) goto l88; if ((65<=iv1)&&(iv1<=90)) goto l88; if (95 == iv1) goto l88; if ((97<=iv1)&&(iv1<=122)) goto l88; goto l89; l88: ; while (!((_i)==(0))) { rT52prev_char(C); _i=(_i)-(1); } goto l85; l89: ; R=1; C->_last_keyword=a1; l85: ; } } else { while (!((_i)==(0))) { rT52prev_char(C); _i=(_i)-(1); } } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_loop(T52 *C){ int R=0; T0* _al=NULL; T0* _hc=NULL; T0* _lb=NULL; T0* _ue=NULL; T0* _vc=NULL; T0* _ic=NULL; T0* _i=NULL; T0* _e_loop=NULL; T0* _sp2=NULL; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms124_52)) { R=1; {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _i=rT52a_compound1(C,(T0 *)ms125_52); /*IF*/if (rT52a_keyword(C,(T0 *)ms126_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp2=(T0 *)n;} _hc=rT52get_comments(C); _al=rT52a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T242 *n=((T242*)se_new(242)); rT242make(n,_sp2,_hc,_al); _ic=(T0 *)n;} } /*FI*/} /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms127_52)) { /*IF*/if ((rT52a_tag_mark(C))&&(rT52a_expression(C))) { {T244 *n=((T244*)se_new(244)); rT244make(n,(C)->_last_tag_mark,(C)->_last_expression,rT52get_comments(C)); _vc=(T0 *)n;}} else if (rT52a_expression(C)) { {T245 *n=((T245*)se_new(245)); rT245make(n,(C)->_last_expression,rT52get_comments(C)); _vc=(T0 *)n;}} else { rT52wcp(C,(T0 *)ms128_52); } /*FI*/} /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms129_52)) { /*IF*/if (rT52a_expression(C)) { _ue=XrT70add_comment((C)->_last_expression,rT52get_comments(C)); } else { rT52fcp(C,(T0 *)ms130_52); _ue=(C)->_last_expression; } /*FI*/} else { rT52fcp(C,(T0 *)ms131_52); _ue=(C)->_last_expression; } /*FI*//*IF*/if (((C)->_cc)==('\73')) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } /*FI*//*IF*/if (!(rT52a_keyword(C,(T0 *)ms132_52))) { rT52wcp(C,(T0 *)ms133_52); } /*FI*/_lb=rT52a_compound2(C,(T0 *)ms134_52,(T0 *)ms115_27); {T243 *n=((T243*)se_new(243)); rT243make(n,_sp,_i,_ic,_vc,_ue,_lb); _e_loop=(T0 *)n;} C->_last_instruction=_e_loop; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_inspect(T52 *C){ int R=0; T0* _ec=NULL; T0* _i=NULL; T0* _spec=NULL; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms120_52)) { R=1; {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_expression(C)) { C->_last_expression=XrT70add_comment((C)->_last_expression,rT52get_comments(C)); } else { rT52fcp(C,(T0 *)ms121_52); } /*FI*/{T231 *n=((T231*)se_new(231)); rT231make(n,_sp,(C)->_last_expression); _i=(T0 *)n;} while (!(!(rT52a_when_part(C,_i)))) { } /*IF*/if (rT52a_keyword(C,(T0 *)ms114_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _spec=(T0 *)n;} _ec=rT52a_compound2(C,(T0 *)ms122_52,(T0 *)ms115_27); rT231set_else_compound((T231*)_i,_spec,_ec); } else if (!(rT52a_keyword(C,(T0 *)ms115_27))) { rT52wcp(C,(T0 *)ms123_52); } /*FI*/C->_last_instruction=_i; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_instruction(T52 *C){ int R=0; R=(((((((rT52a_check(C))||(rT52a_debug(C)))||(rT52a_conditional(C)))||(rT52a_retry(C)))||(rT52a_inspect(C)))||(rT52a_loop(C)))||(rT52a_creation(C)))||(rT52a_assignment_or_call(C)); return R; } /*EIFFEL_PARSER*/int rT52a_result(T52 *C){ int R=0; /*IF*/if (rT7same_as((T7*)(T0 *)ms119_27,((T71*)rT52tmp_name())->_to_string)) { /*IF*/if (!((C)->_function_type)) { rT52error(rT71start_position((T71*)rT52tmp_name()),(T0 *)ms211_52); } /*FI*/C->_last_expression=rT71to_e_result((T71*)rT52tmp_name()); R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_new_export_list(T52 *C){ int _state=0; T0* _new_export_item=NULL; T0* _items=NULL; T0* _clients=NULL; T0* _sp=NULL; T0* _export_list=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms135_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l91; goto l92; l91: ; /*IF*/if (((C)->_cc)==('\173')) { _clients=rT52a_clients(C); _state=1; } else if (((C)->_cc)==('\73')) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } else { /*IF*/if (((int)_items)) { {T124 *n=((T124*)se_new(124)); rT124make(n,_sp,_items); _export_list=(T0 *)n;} /*[IRF3:set_export*//*AW*/((T118*)(C)->_last_parent)->_export_list=(_export_list);/*]*/ } /*FI*/_state=4; } /*FI*/goto l90; l92: ; if (1 == iv1) goto l93; goto l94; l93: ; /*IF*/if (rT52a_keyword(C,(T0 *)ms136_52)) { {T122 *n=((T122*)se_new(122)); rT122make_all(n,_clients); _new_export_item=(T0 *)n;} /*IF*/if (!(_items)) { _items=ma(127,0,1,_new_export_item); } else { rT127add_last((T127*)_items,_new_export_item); } /*FI*/_state=2; } else { /*IF*/if (rT52a_feature_list(C)) { {T122 *n=((T122*)se_new(122)); rT122make(n,_clients,(C)->_last_feature_list); _new_export_item=(T0 *)n;} /*IF*/if (!(_items)) { _items=ma(127,0,1,_new_export_item); } else { rT127add_last((T127*)_items,_new_export_item); } /*FI*/_state=2; } else { _state=3; } /*FI*/} /*FI*/goto l90; l94: ; if (2 == iv1) goto l95; goto l96; l95: ; /*IF*/if (rT52skip1(C,'\73')) { _state=0; } else if (((C)->_cc)==('\173')) { rT52wcp(C,(T0 *)ms203_52); _state=0; } else { /*IF*/if (((int)_items)) { {T124 *n=((T124*)se_new(124)); rT124make(n,_sp,_items); _export_list=(T0 *)n;} /*[IRF3:set_export*//*AW*/((T118*)(C)->_last_parent)->_export_list=(_export_list);/*]*/ } /*FI*/_state=4; } /*FI*/goto l90; l96: ; rT52fcp(C,(T0 *)ms208_52); _state=4; l90: ; } } } /*FI*/}/*EIFFEL_PARSER*/int rT52a_current(T52 *C){ int R=0; /*IF*/if (rT7same_as((T7*)(T0 *)ms111_27,((T71*)rT52tmp_name())->_to_string)) { C->_last_expression=rT71to_e_current((T71*)rT52tmp_name()); R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_retry(T52 *C){ int R=0; /*IF*/if (rT52a_keyword(C,(T0 *)ms31_52)) { /*IF*/if (!((C)->_in_rescue)) { rT52error(rT52pos((C)->_start_line,(C)->_start_column),(T0 *)ms32_52); } /*FI*/{T230 *n=((T230*)se_new(230)); /*[IRF3:make*//*AW*/(n)->_start_position=(rT52pos((C)->_start_line,(C)->_start_column));/*]*/ C->_last_instruction=(T0 *)n;}R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_integer_constant(T52 *C){ int R=0; /*IF*/if (rT52skip1(C,'\53')) { /*IF*/if (!(rT52a_integer(C))) { rT52fcp(C,(T0 *)ms104_27); } else { R=1; } /*FI*/} else if (rT52skip1(C,'\55')) { /*IF*/if (!(rT52a_integer(C))) { rT52fcp(C,(T0 *)ms104_27); } else { C->_last_integer_constant=rT82_px45((T82*)(C)->_last_integer_constant); R=1; } /*FI*/} else { R=rT52a_integer(C); } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_integer(T52 *C){ int R=0; int _value=0; int _state=0; /*IF*/if (rT3is_digit((C)->_cc)) { R=1; C->_start_line=(C)->_line; C->_start_column=(C)->_column; _value=rT3value((C)->_cc); while (!((_state)>(3))) { rT52next_char(C); {int iv1=_state; if (0 == iv1) goto l98; goto l99; l98: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l101; goto l102; l101: ; _value=((_value)*(10))+(rT3value((C)->_cc)); goto l100; l102: ; if (95 == iv2) goto l103; goto l104; l103: ; _state=1; goto l100; l104: ; _state=4; l100: ; } goto l97; l99: ; if (1 == iv1) goto l105; goto l106; l105: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l108; goto l109; l108: ; _value=((_value)*(10))+(rT3value((C)->_cc)); _state=2; goto l107; l109: ; rT52fcp(C,(T0 *)ms206_52); l107: ; } goto l97; l106: ; if (2 == iv1) goto l110; goto l111; l110: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l113; goto l114; l113: ; _value=((_value)*(10))+(rT3value((C)->_cc)); _state=3; goto l112; l114: ; rT52fcp(C,(T0 *)ms206_52); l112: ; } goto l97; l111: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l116; goto l117; l116: ; _value=((_value)*(10))+(rT3value((C)->_cc)); _state=0; goto l115; l117: ; rT52fcp(C,(T0 *)ms206_52); l115: ; } l97: ; } rT52skip_comments(C); {T82 *n=((T82*)se_new(82)); rT82make(n,_value,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_integer_constant=(T0 *)n;} } } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52err_exp(/*C*/T0* a1,T0* a2){ T0* _msg=NULL; {T7 *n=((T7*)se_new(7)); rT7make(n,0); _msg=(T0 *)n;} rT7append((T7*)_msg,(T0 *)ms8_52); rT7append((T7*)_msg,a2); rT7append((T7*)_msg,(T0 *)ms9_52); rT46add_position(a1); rT52fatal_error(_msg); }/*EIFFEL_PARSER*/int rT52a_expression(T52 *C){ int R=0; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (rT52skip2(C,'\74','\74')) { R=1; {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} while (!(!(rT52a_expression(C)))) { /*IF*/if (!(_list)) { _list=ma(83,0,1,(C)->_last_expression); } else { XrT83add_last(_list,(C)->_last_expression); } /*FI*/C->_ok=rT52skip1(C,'\54'); } /*IF*/if (!(rT52skip2(C,'\76','\76'))) { rT52fcp(C,(T0 *)ms88_52); } /*FI*/{T162 *n=((T162*)se_new(162)); rT162make(n,_sp,_list); C->_last_expression=(T0 *)n;}} else { R=rT52a_e0(C); } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_void(T52 *C){ int R=0; /*IF*/if (rT7same_as((T7*)(T0 *)ms121_27,((T71*)rT52tmp_name())->_to_string)) { C->_last_expression=rT71to_e_void((T71*)rT52tmp_name()); R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_procedure_call(T52 *C){ T0* _e_current=NULL; T0* _fn=NULL; _fn=rT71to_feature_name((T71*)rT52tmp_name()); {T92 *n=((T92*)se_new(92)); rT92make(n,/*XrT*FEATURE_NAME*/((T68*)_fn)->_start_position,0); _e_current=(T0 *)n;} rT52a_r10(C,1,_e_current,_fn,rT52a_actuals(C)); }/*EIFFEL_PARSER*/T0* rT52a_external(T52 *C){ T0* R=NULL; T0* _l=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms98_52)) { _l=((T0 *)((T211*)se_new(211))); } else if (rT52a_keyword(C,(T0 *)ms99_52)) { _l=((T0 *)((T212*)se_new(212))); } else if (rT52a_keyword(C,(T0 *)ms100_52)) { _l=((T0 *)((T213*)se_new(213))); } else if (rT52a_keyword(C,(T0 *)ms101_52)) { _l=((T0 *)((T214*)se_new(214))); } else if (rT52a_keyword(C,(T0 *)ms102_52)) { _l=((T0 *)((T215*)se_new(215))); } else { rT52fcp(C,(T0 *)ms103_52); } /*FI*/R=rT136to_external_routine((T136*)oRBC52tmp_feature,_l,rT52a_alias(C)); return R; } T0*oRBC52forbidden_class; /*EIFFEL_PARSER*/void rT52a_r10(T52 *C,int a1,T0* a2,T0* a3,T0* a4){ /*IF*/if (rT52skip1unless2(C,'\56','\56')) { rT52a_after_a_dot(C,a1,rT52to_call(a2,a3,a4)); } else { /*IF*/if (a1) { C->_last_instruction=rT52to_proc_call(C,a2,a3,a4); C->_last_expression=NULL; } else { C->_last_expression=rT52to_call(a2,a3,a4); C->_last_instruction=NULL; } /*FI*/} /*FI*/}/*EIFFEL_PARSER*/T0* rT52analyse_class(T52 *C,T0* a1){ T0* R=NULL; int _old_nbw=0; int _old_nbe=0; /*IF*/if ((/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/)>(0)) { rT46append((T0 *)ms1_52); /*[IRF3:print_as_fatal_error*/rT46do_print((T0 *)ms4_46); rT46die_with_code(1); /*]*/ } /*FI*//*IF*/if (/*(IRF4*/(!(/*(IRF4*/(!(/*(IRF4*/((T52*)oRBC27eiffel_parser)->_is_running/*)*/))&&(((T53*)oRBC27small_eiffel)->_is_doing_eval_flag)/*)*/))&&(((T53*)oRBC27small_eiffel)->_is_compiling_flag)/*)*/) { rT42put_integer((T42*)oRBC1std_output,(/*(IRF4*/((T55*)oRBC53base_class_dictionary)->_count/*)*/)+(1)); rT42put_character((T42*)oRBC1std_output,'\11'); rT42put_string((T42*)oRBC1std_output,a1); rT42put_character((T42*)oRBC1std_output,'\12'); } /*FI*/_old_nbe=/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/; _old_nbw=/*(IRF4*/((T46*)oRBC27eh)->_nb_warnings/*)*/; C->_is_running=1; C->_function_type=NULL; C->_in_ensure=0; C->_last_comments=NULL; C->_ms_numbering=0; rT62read((T62*)oRBC52text,a1); C->_line=1; C->_column=1; C->_current_line=rT62item((C)->_line); /*IF*/if ((((T7*)(C)->_current_line)->_count)==(0)) { C->_cc='\12'; } else { C->_cc=rT7first((T7*)(C)->_current_line); } /*FI*/{T51 *n=((T51*)se_new(51)); rT51make(n,a1); C->_last_base_class=(T0 *)n;} rT52skip_comments(C); rT52a_class_declaration(C); C->_is_running=0; R=(C)->_last_base_class; /*IF*/if (((/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/)-(_old_nbe))>(0)) { /*[IRF3:show_nb_errors*/rT52show_nb(/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/,(T0 *)ms7_52); /*]*/ rT38put_string((T38*)oRBC1std_error,(T0 *)ms4_52); rT38put_string((T38*)oRBC1std_error,a1); rT38put_string((T38*)oRBC1std_error,(T0 *)ms5_52); R=NULL; } else if (((/*(IRF4*/((T46*)oRBC27eh)->_nb_warnings/*)*/)-(_old_nbw))>(0)) { /*[IRF3:show_nb_warnings*/rT52show_nb(/*(IRF4*/((T46*)oRBC27eh)->_nb_warnings/*)*/,(T0 *)ms6_52); /*]*/ } /*FI*//*IF*/if (((int)R)) { rT53add_class((T53*)oRBC27small_eiffel,R); rT51get_started((T51*)R); } /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_routine_body(T52 *C){ T0* R=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms113_27)) { rT51set_is_deferred((T51*)(C)->_last_base_class); R=rT136to_deferred_routine((T136*)oRBC52tmp_feature); } else if (rT52a_keyword(C,(T0 *)ms164_52)) { R=rT52a_external(C); } else if (rT52a_keyword(C,(T0 *)ms165_52)) { /*[IRF3:set_routine_body*//*AW*/((T136*)oRBC52tmp_feature)->_routine_body=(rT52a_compound1(C,(T0 *)ms166_52));/*]*/ R=rT136to_procedure_or_function((T136*)oRBC52tmp_feature); } else if (rT52a_keyword(C,(T0 *)ms167_52)) { /*[IRF3:set_routine_body*//*AW*/((T136*)oRBC52tmp_feature)->_routine_body=(rT52a_compound1(C,(T0 *)ms168_52));/*]*/ R=rT136to_once_routine((T136*)oRBC52tmp_feature); } else { rT52fcp(C,(T0 *)ms169_52); } /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_routine(T52 *C){ T0* R=NULL; T0* _ea=NULL; T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms156_52)) { /*IF*/if (rT52a_manifest_string(C)) { /*[IRF3:set_obsolete_mark*//*AW*/((T136*)oRBC52tmp_feature)->_obsolete_mark=((C)->_last_manifest_string);/*]*/ } else { rT52fcp(C,(T0 *)ms157_52); } /*FI*/} /*FI*//*[IRF3:set_header_comment*//*AW*/((T136*)oRBC52tmp_feature)->_header_comment=(rT52get_comments(C));/*]*/ /*IF*/if (rT52a_keyword(C,(T0 *)ms158_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_keyword(C,(T0 *)ms114_27)) { _hc=rT52get_comments(C); rT136set_require_else((T136*)oRBC52tmp_feature,_sp,_hc,rT52a_assertion(C)); } else { _hc=rT52get_comments(C); rT136set_require((T136*)oRBC52tmp_feature,_sp,_hc,rT52a_assertion(C)); } /*FI*/} /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms159_52)) { rT52a_local_var_list(C,rT52pos((C)->_start_line,(C)->_start_column)); } /*FI*/R=rT52a_routine_body(C); /*IF*/if (rT52a_keyword(C,(T0 *)ms160_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} C->_in_ensure=1; /*IF*/if (rT52a_keyword(C,(T0 *)ms120_27)) { _hc=rT52get_comments(C); _al=rT52a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T159 *n=((T159*)se_new(159)); rT159make(n,_sp,_hc,_al); _ea=(T0 *)n;} /*[IRF3:set_ensure_then*//*AW*/((T159*)_ea)->_is_ensure_then=(1);/*]*/ } /*FI*/XrT158set_ensure_assertion(R,_ea); } else { _hc=rT52get_comments(C); _al=rT52a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T159 *n=((T159*)se_new(159)); rT159make(n,_sp,_hc,_al); _ea=(T0 *)n;} } /*FI*/XrT158set_ensure_assertion(R,_ea); } /*FI*/C->_in_ensure=0; } /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms161_52)) { C->_in_rescue=1; XrT158set_rescue_compound(R,rT52a_compound2(C,(T0 *)ms162_52,(T0 *)ms115_27)); C->_in_rescue=0; } else { /*IF*/if (!(rT52a_keyword(C,(T0 *)ms115_27))) { rT52wcp(C,(T0 *)ms163_52); } /*FI*/} /*FI*/C->_local_vars=NULL; return R; } T0*oRBC52tmp_feature; /*EIFFEL_PARSER*/void rT52skip_comments(T52 *C){ int _state=0; T0* _sp=NULL; while (!((_state)==(2))) { {int iv1=_state; if (0 == iv1) goto l119; goto l120; l119: ; {int iv2=(C)->_cc; if ((9<=iv2)&&(iv2<=10)) goto l122; if (32 == iv2) goto l122; goto l123; l122: ; rT52next_char(C); goto l121; l123: ; if (45 == iv2) goto l124; goto l125; l124: ; rT52next_char(C); _state=1; goto l121; l125: ; _state=2; l121: ; } goto l118; l120: ; if (1 == iv1) goto l126; goto l127; l126: ; {int iv2=(C)->_cc; if (45 == iv2) goto l129; goto l130; l129: ; /*IF*/if (!((C)->_last_comments)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_line,((C)->_column)-(1)); _sp=(T0 *)n;} } /*FI*/rT52next_char(C); /*[IRF3:clear*//*AW*/((T7*)oRBC52lcs)->_count=(0);/*]*/ while (!(((C)->_cc)==('\12'))) { rT7extend((T7*)oRBC52lcs,(C)->_cc); rT52next_char(C); } /*IF*/if (!((C)->_last_comments)) { {T61 *n=((T61*)se_new(61)); rT61make(n,_sp,ma(45,0,1,rT7twin((T7*)oRBC52lcs))); C->_last_comments=(T0 *)n;} } else { rT61add_last((T61*)(C)->_last_comments,rT7twin((T7*)oRBC52lcs)); } /*FI*/_state=0; goto l128; l130: ; rT52prev_char(C); _state=2; l128: ; } goto l118; l127: ; l118: ; } } }/*EIFFEL_PARSER*/int rT52a_strip(T52 *C){ int R=0; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms181_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52skip1(C,'\50')) { C->_ok=rT52a_feature_list(C); {T172 *n=((T172*)se_new(172)); rT172make(n,_sp,(C)->_last_feature_list); C->_last_expression=(T0 *)n;}/*IF*/if (!(rT52skip1(C,'\51'))) { rT52fcp(C,(T0 *)ms182_52); } /*FI*/R=1; } else { rT52fcp(C,(T0 *)ms183_52); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52prev_char(T52 *C){ /*IF*/if (((C)->_column)>(1)) { C->_column=((C)->_column)-(1); C->_cc=rT7item((T7*)(C)->_current_line,(C)->_column); } else { /*IF*/if (((C)->_line)>(1)) { C->_line=((C)->_line)-(1); C->_current_line=rT62item((C)->_line); C->_column=(((T7*)(C)->_current_line)->_count)+(1); C->_cc='\12'; } else { C->_column=0; C->_cc='\0'; } /*FI*/} /*FI*/}/*EIFFEL_PARSER*/int rT52a_type(T52 *C){ int R=0; T0* _argument_name=NULL; T0* _sp=NULL; R=1; /*IF*/if (rT52a_keyword(C,(T0 *)ms189_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_identifier(C)) { /*IF*/if (rT52a_current(C)) { {T93 *n=((T93*)se_new(93)); rT93make(n,_sp,(C)->_last_expression); C->_last_type=(T0 *)n;}} else if (rT52a_argument(C)) { _argument_name=(C)->_last_expression; if ((int)_argument_name) switch (((T0 *)_argument_name)->id) { case 90: break; default: _argument_name = NULL; };{T98 *n=((T98*)se_new(98)); rT98make(n,_sp,_argument_name); C->_last_type=(T0 *)n;}} else { {T99 *n=((T99*)se_new(99)); rT99make(n,_sp,rT71to_feature_name((T71*)rT52tmp_name())); C->_last_type=(T0 *)n;}} /*FI*/} else { rT52fcp(C,(T0 *)ms190_52); } /*FI*/} else if (rT52a_keyword(C,(T0 *)ms116_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_class_type(C)) { {T100 *n=((T100*)se_new(100)); rT100make(n,_sp,(C)->_last_class_type); C->_last_type=(T0 *)n;}} else { rT52fcp(C,(T0 *)ms191_52); } /*FI*/} else if (rT52a_keyword(C,(T0 *)ms38_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_integer(C)) { {T101 *n=((T101*)se_new(101)); rT101make(n,_sp,(C)->_last_integer_constant); C->_last_type=(T0 *)n;}} else if (rT52a_identifier(C)) { {T103 *n=((T103*)se_new(103)); rT103make(n,_sp,rT71to_feature_name((T71*)rT52tmp_name())); C->_last_type=(T0 *)n;}} else { rT52fcp(C,(T0 *)ms192_52); } /*FI*/} else if (rT52a_type_formal_generic(C)) { C->_last_type=(C)->_last_type_formal_generic; } else if (rT52a_class_type(C)) { C->_last_type=(C)->_last_class_type; } else { R=0; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_type_formal_generic(T52 *C){ int R=0; int _rank=0; T0* _cn=NULL; T0* _fga=NULL; /*IF*/if (((int)(C)->_formal_generic_list)) { _rank=1; while (!((R)||((_rank)>(rT87count((T87*)(C)->_formal_generic_list))))) { _fga=rT87item((T87*)(C)->_formal_generic_list,_rank); /*IF*/if (rT52a_keyword(C,((T49*)((T86*)_fga)->_name)->_to_string)) { {T49 *n=((T49*)se_new(49)); rT49make(n,((T49*)((T86*)_fga)->_name)->_to_string,rT52pos((C)->_start_line,(C)->_start_column)); _cn=(T0 *)n;} {T104 *n=((T104*)se_new(104)); rT104make(n,_cn,_rank); C->_last_type_formal_generic=(T0 *)n;} R=1; } /*FI*/_rank=(_rank)+(1); } } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52next_char(T52 *C){ /*IF*/if (((C)->_column)<(((T7*)(C)->_current_line)->_count)) { C->_column=((C)->_column)+(1); C->_cc=rT7item((T7*)(C)->_current_line,(C)->_column); } else if (((C)->_column)==(((T7*)(C)->_current_line)->_count)) { C->_column=((C)->_column)+(1); C->_cc='\12'; } else if (((C)->_line)==(((T62*)oRBC52text)->_count)) { C->_cc='\0'; } else { C->_column=1; C->_line=((C)->_line)+(1); C->_current_line=rT62item((C)->_line); /*IF*/if ((((T7*)(C)->_current_line)->_count)==(0)) { C->_cc='\12'; } else { C->_cc=rT7first((T7*)(C)->_current_line); } /*FI*/} /*FI*/}int ofBC52tmp_name=0; T0*oRBC52tmp_name; /*EIFFEL_PARSER*/T0* rT52tmp_name(/*C*/void){ if (ofBC52tmp_name==0){ T0* R=NULL; ofBC52tmp_name=1; {T71 *n=((T71*)se_new(71)); rT71make(n,0,0); R=(T0 *)n;} oRBC52tmp_name=R;} return oRBC52tmp_name;} int ofBC52tmp_operator=0; T0*oRBC52tmp_operator; /*EIFFEL_PARSER*/T0* rT52tmp_operator(/*C*/void){ if (ofBC52tmp_operator==0){ T0* R=NULL; ofBC52tmp_operator=1; {T71 *n=((T71*)se_new(71)); rT71make(n,0,0); R=(T0 *)n;} oRBC52tmp_operator=R;} return oRBC52tmp_operator;} /*EIFFEL_PARSER*/void rT52show_nb(/*C*/int a1,T0* a2){ /*IF*/if ((a1)>(0)) { rT38put_string((T38*)oRBC1std_error,(T0 *)ms109_27); rT38put_integer((T38*)oRBC1std_error,a1); rT38put_string((T38*)oRBC1std_error,a2); } /*FI*/}/*EIFFEL_PARSER*/T0* rT52current_position(T52 *C){ T0* R=NULL; {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_line,(C)->_column); R=(T0 *)n;} return R; } /*EIFFEL_PARSER*/void rT52warning(/*C*/T0* a1,T0* a2){ rT46add_position(a1); rT46warning((T46*)oRBC27eh,a2); }/*EIFFEL_PARSER*/T0* rT52current_class_name(T52 *C){ T0* R=NULL; R=((T51*)(C)->_last_base_class)->_base_class_name; return R; } /*EIFFEL_PARSER*/T0* rT52to_proc_call(T52 *C,T0* a1,T0* a2,T0* a3){ T0* R=NULL; /*IF*/if (!(a2)) { rT52fcp(C,(T0 *)ms197_52); } else if (!(a3)) { {T181 *n=((T181*)se_new(181)); rT181make(n,a1,a2); R=(T0 *)n;}} else if ((rT173count((T173*)a3))==(1)) { {T182 *n=((T182*)se_new(182)); rT182make(n,a1,a2,a3); R=(T0 *)n;}} else { {T183 *n=((T183*)se_new(183)); rT183make(n,a1,a2,a3); R=(T0 *)n;}} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52error(/*C*/T0* a1,T0* a2){ rT46add_position(a1); rT46error((T46*)oRBC27eh,a2); }/*EIFFEL_PARSER*/void rT52ecp(T52 *C,T0* a1){ rT52error(rT52current_position(C),a1); }/*EIFFEL_PARSER*/void rT52fcp(T52 *C,T0* a1){ rT46add_position(rT52current_position(C)); rT52fatal_error(a1); }T0*oRBC52lcs; T0*oRBC52text; /*EIFFEL_PARSER*/void rT52wcp(T52 *C,T0* a1){ rT52warning(rT52current_position(C),a1); }/*EIFFEL_PARSER*/T0* rT52pos(/*C*/int a1,int a2){ T0* R=NULL; {T47 *n=((T47*)se_new(47)); rT47make(n,a1,a2); R=(T0 *)n;} return R; } /*EIFFEL_PARSER*/int rT52a_e0(T52 *C){ int R=0; R=rT52a_e1(C); rT52a_r1(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e1(T52 *C){ int R=0; R=rT52a_e2(C); rT52a_r2(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e2(T52 *C){ int R=0; R=rT52a_e3(C); rT52a_r3(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e3(T52 *C){ int R=0; R=rT52a_e4(C); rT52a_r4(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e4(T52 *C){ int R=0; R=rT52a_e5(C); rT52a_r5(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e5(T52 *C){ int R=0; R=rT52a_e6(C); rT52a_r6(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e6(T52 *C){ int R=0; R=rT52a_e7(C); rT52a_r7(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e7(T52 *C){ int R=0; R=rT52a_e8(C); rT52a_r8(C,(C)->_last_expression); return R; } /*EIFFEL_PARSER*/int rT52a_e8(T52 *C){ int R=0; T0* _sp=NULL; T0* _prefix_freeop=NULL; T0* _op=NULL; T0* _prefix_moins=NULL; T0* _prefix_plus=NULL; T0* _prefix_not=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms118_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e8(C)) { {T170 *n=((T170*)se_new(170)); rT170make(n,_sp,(C)->_last_expression); _prefix_not=(T0 *)n;} C->_last_expression=_prefix_not; R=1; } else { rT52err_exp(_sp,(T0 *)ms118_27); } /*FI*/} else if (rT52skip1(C,'\53')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e8(C)) { {T169 *n=((T169*)se_new(169)); rT169make(n,_sp,(C)->_last_expression); _prefix_plus=(T0 *)n;} C->_last_expression=_prefix_plus; R=1; } else { rT52err_exp(_sp,(T0 *)ms89_52); } /*FI*/} else if (rT52skip1(C,'\55')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e8(C)) { {T168 *n=((T168*)se_new(168)); rT168make(n,_sp,(C)->_last_expression); _prefix_moins=(T0 *)n;} C->_last_expression=_prefix_moins; R=1; } else { rT52err_exp(_sp,(T0 *)ms90_52); } /*FI*/} else if (rT52a_free_operator(C)) { _op=rT71to_prefix_name((T71*)rT52tmp_operator()); /*IF*/if (rT52a_e8(C)) { {T163 *n=((T163*)se_new(163)); rT163make(n,(C)->_last_expression,_op); _prefix_freeop=(T0 *)n;} C->_last_expression=_prefix_freeop; R=1; } else { rT46append((T0 *)ms91_52); rT52err_exp(((T68*)_op)->_start_position,((T68*)_op)->_to_string); } /*FI*/} else { R=rT52a_e9(C); } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_e9(T52 *C){ int R=0; T0* _e_old=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms92_52)) { /*IF*/if (!((C)->_in_ensure)) { rT52error(rT52pos((C)->_start_line,(C)->_start_column),(T0 *)ms93_52); } /*FI*//*IF*/if (rT52a_e10(C)) { {T171 *n=((T171*)se_new(171)); /*[IRF3:make*//*AW*/(n)->_expression=((C)->_last_expression);/*]*/ _e_old=(T0 *)n;} C->_last_expression=_e_old; R=1; } else { rT52fcp(C,(T0 *)ms94_52); } /*FI*/} else { R=rT52a_e10(C); } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_r1(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_implies=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms117_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e1(C)) { {T206 *n=((T206*)se_new(206)); rT206make(n,a1,_sp,(C)->_last_expression); _infix_implies=(T0 *)n;} rT52a_r1(C,_infix_implies); } else { rT52error(_sp,(T0 *)ms170_52); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/void rT52a_r2(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_xor=NULL; T0* _infix_or=NULL; T0* _infix_or_else=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms81_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_keyword(C,(T0 *)ms114_27)) { /*IF*/if (rT52a_e2(C)) { {T205 *n=((T205*)se_new(205)); rT205make(n,a1,_sp,(C)->_last_expression); _infix_or_else=(T0 *)n;} rT52a_r2(C,_infix_or_else); } else { rT52err_exp(_sp,(T0 *)ms82_27); } /*FI*/} else { /*IF*/if (rT52a_e2(C)) { {T204 *n=((T204*)se_new(204)); rT204make(n,a1,_sp,(C)->_last_expression); _infix_or=(T0 *)n;} rT52a_r2(C,_infix_or); } else { rT52err_exp(_sp,(T0 *)ms81_27); } /*FI*/} /*FI*/} else if (rT52a_keyword(C,(T0 *)ms122_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e2(C)) { {T203 *n=((T203*)se_new(203)); rT203make(n,a1,_sp,(C)->_last_expression); _infix_xor=(T0 *)n;} rT52a_r2(C,_infix_xor); } else { rT52err_exp(_sp,(T0 *)ms122_27); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/void rT52a_r3(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_and=NULL; T0* _infix_and_then=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms59_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_keyword(C,(T0 *)ms120_27)) { /*IF*/if (rT52a_e3(C)) { {T202 *n=((T202*)se_new(202)); rT202make(n,a1,_sp,(C)->_last_expression); _infix_and_then=(T0 *)n;} rT52a_r3(C,_infix_and_then); } else { rT52err_exp(_sp,(T0 *)ms60_27); } /*FI*/} else { /*IF*/if (rT52a_e3(C)) { {T201 *n=((T201*)se_new(201)); rT201make(n,a1,_sp,(C)->_last_expression); _infix_and=(T0 *)n;} rT52a_r3(C,_infix_and); } else { rT52err_exp(_sp,(T0 *)ms59_27); } /*FI*/} /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/void rT52a_r4(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_gt=NULL; T0* _infix_ge=NULL; T0* _infix_lt=NULL; T0* _infix_le=NULL; T0* _infix_not_equal=NULL; T0* _infix_equal=NULL; /*IF*/if (rT52skip1(C,'\75')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e4(C)) { {T200 *n=((T200*)se_new(200)); rT200make(n,a1,_sp,(C)->_last_expression); _infix_equal=(T0 *)n;} rT52a_r4(C,_infix_equal); } else { rT52err_exp(_sp,(T0 *)ms171_52); } /*FI*/} else if (rT52skip2(C,'\57','\75')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e4(C)) { {T199 *n=((T199*)se_new(199)); rT199make(n,a1,_sp,(C)->_last_expression); _infix_not_equal=(T0 *)n;} rT52a_r4(C,_infix_not_equal); } else { rT52err_exp(_sp,(T0 *)ms172_52); } /*FI*/} else if (rT52skip2(C,'\74','\75')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e4(C)) { {T198 *n=((T198*)se_new(198)); rT198make(n,a1,_sp,(C)->_last_expression); _infix_le=(T0 *)n;} rT52a_r4(C,_infix_le); } else { rT52err_exp(_sp,(T0 *)ms173_52); } /*FI*/} else if (rT52skip2(C,'\76','\75')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e4(C)) { {T196 *n=((T196*)se_new(196)); rT196make(n,a1,_sp,(C)->_last_expression); _infix_ge=(T0 *)n;} rT52a_r4(C,_infix_ge); } else { rT52err_exp(_sp,(T0 *)ms174_52); } /*FI*/} else if (rT52skip1(C,'\74')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e4(C)) { {T197 *n=((T197*)se_new(197)); rT197make(n,a1,_sp,(C)->_last_expression); _infix_lt=(T0 *)n;} rT52a_r4(C,_infix_lt); } else { rT52err_exp(_sp,(T0 *)ms175_52); } /*FI*/} else if (rT52skip1unless2(C,'\76','\76')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e4(C)) { {T195 *n=((T195*)se_new(195)); rT195make(n,a1,_sp,(C)->_last_expression); _infix_gt=(T0 *)n;} rT52a_r4(C,_infix_gt); } else { rT52err_exp(_sp,(T0 *)ms176_52); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/void rT52a_r5(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_minus=NULL; T0* _infix_plus=NULL; /*IF*/if (rT52skip1(C,'\53')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e5(C)) { {T194 *n=((T194*)se_new(194)); rT194make(n,a1,_sp,(C)->_last_expression); _infix_plus=(T0 *)n;} rT52a_r5(C,_infix_plus); } else { rT52err_exp(_sp,(T0 *)ms95_27); } /*FI*/} else if (rT52skip1(C,'\55')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e5(C)) { {T193 *n=((T193*)se_new(193)); rT193make(n,a1,_sp,(C)->_last_expression); _infix_minus=(T0 *)n;} rT52a_r5(C,_infix_minus); } else { rT52err_exp(_sp,(T0 *)ms96_27); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/void rT52a_r6(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_div=NULL; T0* _infix_int_rem=NULL; T0* _infix_int_div=NULL; T0* _infix_times=NULL; /*IF*/if (rT52skip1(C,'\52')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e6(C)) { {T192 *n=((T192*)se_new(192)); rT192make(n,a1,_sp,(C)->_last_expression); _infix_times=(T0 *)n;} rT52a_r6(C,_infix_times); } else { rT52err_exp(_sp,(T0 *)ms177_52); } /*FI*/} else if (rT52skip2(C,'\57','\57')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e6(C)) { {T191 *n=((T191*)se_new(191)); rT191make(n,a1,_sp,(C)->_last_expression); _infix_int_div=(T0 *)n;} rT52a_r6(C,_infix_int_div); } else { rT52err_exp(_sp,(T0 *)ms178_52); } /*FI*/} else if (rT52skip2(C,'\134','\134')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e6(C)) { {T190 *n=((T190*)se_new(190)); rT190make(n,a1,_sp,(C)->_last_expression); _infix_int_rem=(T0 *)n;} rT52a_r6(C,_infix_int_rem); } else { rT52err_exp(_sp,(T0 *)ms179_52); } /*FI*/} else if (rT52skip1unless2(C,'\57','\75')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e6(C)) { {T189 *n=((T189*)se_new(189)); rT189make(n,a1,_sp,(C)->_last_expression); _infix_div=(T0 *)n;} rT52a_r6(C,_infix_div); } else { rT52err_exp(_sp,(T0 *)ms125_27); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/int rT52skip1unless2(T52 *C,char a1,char a2){ int R=0; C->_start_line=(C)->_line; C->_start_column=(C)->_column; /*IF*/if (((C)->_cc)==(a1)) { rT52next_char(C); /*IF*/if (((C)->_cc)==(a2)) { rT52prev_char(C); } else { R=1; rT52skip_comments(C); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/int rT52skip1(T52 *C,char a1){ int R=0; /*IF*/if ((a1)==((C)->_cc)) { C->_start_line=(C)->_line; C->_start_column=(C)->_column; R=1; rT52next_char(C); rT52skip_comments(C); } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_r7(T52 *C,T0* a1){ T0* _sp=NULL; T0* _infix_power=NULL; /*IF*/if (rT52skip1(C,'\136')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52a_e7(C)) { {T188 *n=((T188*)se_new(188)); rT188make(n,a1,_sp,(C)->_last_expression); _infix_power=(T0 *)n;} rT52a_r7(C,_infix_power); } else { rT52err_exp(_sp,(T0 *)ms180_52); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/int rT52skip2(T52 *C,char a1,char a2){ int R=0; /*IF*/if ((a1)==((C)->_cc)) { C->_start_line=(C)->_line; C->_start_column=(C)->_column; rT52next_char(C); /*IF*/if ((a2)==((C)->_cc)) { R=1; rT52next_char(C); rT52skip_comments(C); } else { rT52prev_char(C); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_r8(T52 *C,T0* a1){ T0* _infix_freeop=NULL; T0* _infix_name=NULL; /*IF*/if (rT52a_free_operator(C)) { _infix_name=rT71to_infix_name_use((T71*)rT52tmp_operator()); /*IF*/if (rT52a_e8(C)) { {T186 *n=((T186*)se_new(186)); rT186make(n,a1,_infix_name,(C)->_last_expression); _infix_freeop=(T0 *)n;} rT52a_r8(C,_infix_freeop); } else { rT52err_exp(((T72*)_infix_name)->_start_position,((T72*)_infix_name)->_to_string); } /*FI*/} else { C->_last_expression=a1; } /*FI*/}/*EIFFEL_PARSER*/int rT52a_debug(T52 *C){ int R=0; T0* _e_debug=NULL; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms84_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (rT52skip1(C,'\50')) { while (!(!(rT52a_manifest_string(C)))) { /*IF*/if (!(_list)) { _list=ma(153,0,1,(C)->_last_manifest_string); } else { rT153add_last((T153*)_list,(C)->_last_manifest_string); } /*FI*/C->_ok=rT52skip1(C,'\54'); } /*IF*/if (!(_list)) { rT52wcp(C,(T0 *)ms85_52); } /*FI*//*IF*/if (!(rT52skip1(C,'\51'))) { rT52fcp(C,(T0 *)ms86_52); } /*FI*/} /*FI*/R=1; {T221 *n=((T221*)se_new(221)); rT221make(n,_sp,_list,rT52a_compound2(C,(T0 *)ms87_52,(T0 *)ms115_27)); _e_debug=(T0 *)n;} C->_last_instruction=_e_debug; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_feature_declaration(T52 *C){ int R=0; rT136initialize((T136*)oRBC52tmp_feature); /*IF*/if (rT52a_keyword(C,(T0 *)ms106_52)) { /*IF*/if (rT52a_feature_name(C)) { R=1; /*XrT*FEATURE_NAME*//*[IRF3:set_is_frozen*//*AW*/((T68*)(C)->_last_feature_name)->_is_frozen=(1);/*]*/ rT136add_synonym((C)->_last_feature_name); } else { rT52fcp(C,(T0 *)ms199_52); } /*FI*/} else if (rT52a_feature_name(C)) { R=1; rT136add_synonym((C)->_last_feature_name); } /*FI*/while (!(!(rT52skip1(C,'\54')))) { /*IF*/if (rT52a_keyword(C,(T0 *)ms107_52)) { /*IF*/if (rT52a_feature_name(C)) { /*XrT*FEATURE_NAME*//*[IRF3:set_is_frozen*//*AW*/((T68*)(C)->_last_feature_name)->_is_frozen=(1);/*]*/ rT136add_synonym((C)->_last_feature_name); } else { rT52fcp(C,(T0 *)ms108_52); } /*FI*/} else if (rT52a_feature_name(C)) { rT136add_synonym((C)->_last_feature_name); } else { rT52ecp(C,(T0 *)ms109_52); } /*FI*/} /*IF*/if (R) { rT52a_formal_arg_list(C); C->_function_type=NULL; /*IF*/if (rT52skip1(C,'\72')) { /*IF*/if (!(rT52a_type(C))) { rT52fcp(C,(T0 *)ms110_52); } else { C->_function_type=(C)->_last_type; /*[IRF3:set_type*//*AW*/((T136*)oRBC52tmp_feature)->_type=((C)->_last_type);/*]*/ } /*FI*/} /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms111_52)) { /*IF*/if (rT52a_keyword(C,(T0 *)ms112_52)) { C->_last_feature_declaration=rT136to_cst_att_unique((T136*)oRBC52tmp_feature); } else if (rT52a_boolean_constant(C)) { C->_last_feature_declaration=rT136to_cst_att_boolean((T136*)oRBC52tmp_feature,(C)->_last_boolean_constant); } else if (rT52a_character_constant(C)) { C->_last_feature_declaration=rT136to_cst_att_character((T136*)oRBC52tmp_feature,(C)->_last_character_constant); } else if (rT52a_manifest_string(C)) { C->_last_feature_declaration=rT136to_cst_att_string((T136*)oRBC52tmp_feature,(C)->_last_manifest_string); } else if (rT52a_bit_constant(C)) { C->_last_feature_declaration=rT136to_cst_att_bit((T136*)oRBC52tmp_feature,(C)->_last_bit_constant); } else if (rT52a_real_constant(C)) { C->_last_feature_declaration=rT136to_cst_att_real((T136*)oRBC52tmp_feature,(C)->_last_real_constant); } else if (rT52a_integer_constant(C)) { C->_last_feature_declaration=rT136to_cst_att_integer((T136*)oRBC52tmp_feature,(C)->_last_integer_constant); } else { C->_last_feature_declaration=rT52a_routine(C); } /*FI*/} else { C->_last_feature_declaration=rT136to_writable_attribute((T136*)oRBC52tmp_feature); } /*FI*/C->_function_type=NULL; C->_arguments=NULL; } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_feature_clause(T52 *C){ T0* _aof=NULL; T0* _comment=NULL; T0* _clients=NULL; T0* _feature_clause=NULL; _clients=rT52a_clients(C); _comment=rT52get_comments(C); while (!(!(rT52a_feature_declaration(C)))) { C->_ok=rT52skip1(C,'\73'); /*IF*/if (((int)(C)->_last_feature_declaration)) { /*IF*/if (!(_aof)) { _aof=ma(65,0,1,(C)->_last_feature_declaration); } else { rT65add_last((T65*)_aof,(C)->_last_feature_declaration); } /*FI*/XrT64set_header_comment((C)->_last_feature_declaration,rT52get_comments(C)); } /*FI*/} /*IF*/if ((((int)_aof))||(((int)_comment))) { {T135 *n=((T135*)se_new(135)); rT135make(n,_clients,_comment,_aof); _feature_clause=(T0 *)n;} rT51add_feature_clause((T51*)(C)->_last_base_class,_feature_clause); } /*FI*/C->_last_keyword=NULL; }/*EIFFEL_PARSER*/int rT52a_feature_list(T52 *C){ int R=0; int _state=0; C->_last_feature_list=NULL; while (!((_state)>=(3))) { {int iv1=_state; if (0 == iv1) goto l132; goto l133; l132: ; /*IF*/if (rT52a_feature_name(C)) { C->_last_feature_list=ma(129,0,1,(C)->_last_feature_name); R=1; _state=1; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms204_52); C->_ok=rT52skip1(C,'\54'); } else { _state=3; } /*FI*/goto l131; l133: ; if (1 == iv1) goto l134; goto l135; l134: ; /*IF*/if (((C)->_cc)==('\54')) { C->_ok=rT52skip1(C,'\54'); _state=2; } else if (rT52a_feature_name(C)) { rT52warning(/*XrT*FEATURE_NAME*/((T68*)(C)->_last_feature_name)->_start_position,(T0 *)ms202_52); rT129add_last((T129*)(C)->_last_feature_list,(C)->_last_feature_name); } else { _state=3; } /*FI*/goto l131; l135: ; if (2 == iv1) goto l136; goto l137; l136: ; /*IF*/if (rT52a_feature_name(C)) { rT129add_last((T129*)(C)->_last_feature_list,(C)->_last_feature_name); _state=1; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms209_52); C->_ok=rT52skip1(C,'\54'); } else { rT52ecp(C,(T0 *)ms199_52); _state=3; } /*FI*/goto l131; l137: ; l131: ; } } return R; } /*EIFFEL_PARSER*/int rT52a_feature_name(T52 *C){ int R=0; /*IF*/if (rT52a_prefix(C)) { C->_last_feature_name=(C)->_last_prefix; R=1; } else if (rT52a_infix(C)) { C->_last_feature_name=(C)->_last_infix; R=1; } else if (rT52a_identifier(C)) { C->_last_feature_name=rT71to_feature_name((T71*)rT52tmp_name()); R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_character_constant(T52 *C){ int R=0; char _value=0; int _printing_mode=0; int _state=0; T0* _sp=NULL; /*IF*/if (((C)->_cc)==('\47')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_line,(C)->_column); _sp=(T0 *)n;} R=1; while (!((_state)>(2))) { rT52next_char(C); {int iv1=_state; if (0 == iv1) goto l139; goto l140; l139: ; {int iv2=(C)->_cc; if (37 == iv2) goto l142; goto l143; l142: ; _state=1; goto l141; l143: ; if (39 == iv2) goto l144; goto l145; l144: ; rT52fcp(C,(T0 *)ms207_52); _state=2; goto l141; l145: ; _value=(C)->_cc; _printing_mode=0; _state=2; l141: ; } goto l138; l140: ; if (1 == iv1) goto l146; goto l147; l146: ; _printing_mode=1; _state=2; {int iv2=(C)->_cc; if (65 == iv2) goto l149; goto l150; l149: ; _value='\100'; goto l148; l150: ; if (66 == iv2) goto l151; goto l152; l151: ; _value='\10'; goto l148; l152: ; if (67 == iv2) goto l153; goto l154; l153: ; _value='\136'; goto l148; l154: ; if (68 == iv2) goto l155; goto l156; l155: ; _value='\44'; goto l148; l156: ; if (70 == iv2) goto l157; goto l158; l157: ; _value='\14'; goto l148; l158: ; if (72 == iv2) goto l159; goto l160; l159: ; _value='\134'; goto l148; l160: ; if (76 == iv2) goto l161; goto l162; l161: ; _value='\176'; goto l148; l162: ; if (78 == iv2) goto l163; goto l164; l163: ; _value='\12'; goto l148; l164: ; if (81 == iv2) goto l165; goto l166; l165: ; _value='\140'; goto l148; l166: ; if (82 == iv2) goto l167; goto l168; l167: ; _value='\15'; goto l148; l168: ; if (83 == iv2) goto l169; goto l170; l169: ; _value='\43'; goto l148; l170: ; if (84 == iv2) goto l171; goto l172; l171: ; _value='\11'; goto l148; l172: ; if (85 == iv2) goto l173; goto l174; l173: ; _value='\0'; goto l148; l174: ; if (86 == iv2) goto l175; goto l176; l175: ; _value='\174'; goto l148; l176: ; if (37 == iv2) goto l177; goto l178; l177: ; _value='\45'; goto l148; l178: ; if (39 == iv2) goto l179; goto l180; l179: ; _value='\47'; goto l148; l180: ; if (34 == iv2) goto l181; goto l182; l181: ; _value='\42'; goto l148; l182: ; if (40 == iv2) goto l183; goto l184; l183: ; _value='\133'; goto l148; l184: ; if (41 == iv2) goto l185; goto l186; l185: ; _value='\135'; goto l148; l186: ; if (60 == iv2) goto l187; goto l188; l187: ; _value='\173'; goto l148; l188: ; if (62 == iv2) goto l189; goto l190; l189: ; _value='\175'; goto l148; l190: ; if (47 == iv2) goto l191; goto l192; l191: ; rT52a_ascii_code(C); _value=(C)->_last_ascii_code; _printing_mode=2; goto l148; l192: ; rT52fcp(C,(T0 *)ms24_52); l148: ; } goto l138; l147: ; _state=3; {int iv2=(C)->_cc; if (39 == iv2) goto l194; goto l195; l194: ; goto l193; l195: ; rT52fcp(C,(T0 *)ms207_52); l193: ; } rT52next_char(C); rT52skip_comments(C); l138: ; } } {T77 *n=((T77*)se_new(77)); rT77make(n,_sp,_value,_printing_mode); C->_last_character_constant=(T0 *)n;} } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_check(T52 *C){ int R=0; T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms110_27)) { R=1; {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _hc=rT52get_comments(C); _al=rT52a_assertion(C); /*IF*/if ((((int)_hc))||(((int)_al))) { {T219 *n=((T219*)se_new(219)); rT219make(n,_sp,_hc,_al); C->_last_instruction=(T0 *)n;}} else { rT52wcp(C,(T0 *)ms53_52); } /*FI*//*IF*/if (!(rT52a_keyword(C,(T0 *)ms115_27))) { rT52fcp(C,(T0 *)ms54_52); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_class_declaration(T52 *C){ T0* _al=NULL; T0* _hc=NULL; T0* _sp=NULL; rT52a_indexing(C); /*IF*/if (rT52a_keyword(C,(T0 *)ms113_27)) { rT51set_is_deferred((T51*)(C)->_last_base_class); } /*FI*//*IF*/if (rT52a_keyword(C,(T0 *)ms116_27)) { rT51set_is_expanded((T51*)(C)->_last_base_class); /*IF*/if (rT52a_keyword(C,(T0 *)ms113_27)) { rT51set_is_deferred((T51*)(C)->_last_base_class); } /*FI*/} /*FI*//*[IRF3:set_heading_comment1*//*AW*/((T51*)(C)->_last_base_class)->_heading_comment1=(rT52get_comments(C));/*]*/ /*IF*/if (!(rT52a_keyword(C,(T0 *)ms55_52))) { rT52fcp(C,(T0 *)ms56_52); } /*FI*//*IF*/if (rT52a_base_class_name(C)) { rT49set_with((T49*)rT52current_class_name(C),(C)->_last_class_name); /*IF*/if (rT45fast_has((T45*)oRBC52forbidden_class,((T49*)(C)->_last_class_name)->_to_string)) { rT46add_position(((T49*)(C)->_last_class_name)->_start_position); rT52fatal_error((T0 *)ms57_52); } /*FI*/} else { rT52fcp(C,(T0 *)ms58_52); } /*FI*/rT52a_formal_generic_list(C); /*IF*/if (rT52a_keyword(C,(T0 *)ms59_52)) { /*IF*/if (rT52a_manifest_string(C)) { /*[IRF3:set_obsolete_type_string*//*AW*/((T51*)(C)->_last_base_class)->_obsolete_type_string=((C)->_last_manifest_string);/*]*/ } else { rT52fcp(C,(T0 *)ms60_52); } /*FI*/} /*FI*//*[IRF3:set_heading_comment2*//*AW*/((T51*)(C)->_last_base_class)->_heading_comment2=(rT52get_comments(C));/*]*/ /*IF*/if (rT52a_keyword(C,(T0 *)ms61_52)) { rT52a_parent_list(C,rT52pos((C)->_start_line,(C)->_start_column),rT52get_comments(C)); } /*FI*/while (!(!(rT52a_keyword(C,(T0 *)ms112_27)))) { rT52a_creation_clause(C); } while (!(!(rT52a_keyword(C,(T0 *)ms62_52)))) { rT52a_feature_clause(C); } /*IF*/if (rT52a_keyword(C,(T0 *)ms63_52)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _hc=rT52get_comments(C); _al=rT52a_assertion(C); rT51set_invariant((T51*)(C)->_last_base_class,_sp,_hc,_al); } /*FI*//*IF*/if ((rT52a_keyword(C,(T0 *)ms115_27))||(((T0 *)(C)->_last_keyword)==((T0 *)(T0 *)ms115_27))) { /*IF*/if (((C)->_cc)==('\73')) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } /*FI*//*[IRF3:set_end_comment*//*AW*/((T51*)(C)->_last_base_class)->_end_comment=(rT52get_comments(C));/*]*/ /*IF*/if (((C)->_cc)!=('\0')) { rT52fcp(C,(T0 *)ms64_52); } /*FI*/} else { rT52fcp(C,(T0 *)ms65_52); } /*FI*/}/*EIFFEL_PARSER*/int rT52a_class_type(T52 *C){ int R=0; T0* _generic_list=NULL; T0* _base_class_name=NULL; int _state=0; /*IF*/if (rT52a_base_type(C)) { C->_last_class_type=(C)->_last_base_type; R=1; } else if (rT52a_base_class_name(C)) { R=1; _base_class_name=(C)->_last_class_name; while (!((_state)>(2))) { {int iv1=_state; if (0 == iv1) goto l197; goto l198; l197: ; /*IF*/if (rT52skip1(C,'\133')) { _state=1; } else { {T116 *n=((T116*)se_new(116)); /*[IRF3:make*//*AW*/(n)->_base_class_name=(_base_class_name);/*]*/ C->_last_class_type=(T0 *)n;}_state=3; } /*FI*/goto l196; l198: ; if (1 == iv1) goto l199; goto l200; l199: ; /*IF*/if (rT52a_type(C)) { /*IF*/if (!(_generic_list)) { _generic_list=ma(106,0,1,(C)->_last_type); } else { rT106add_last((T106*)_generic_list,(C)->_last_type); } /*FI*/_state=2; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms209_52); C->_ok=rT52skip1(C,'\54'); } else if (((C)->_cc)==('\135')) { _state=2; } else { rT52fcp(C,(T0 *)ms66_52); _state=2; } /*FI*/goto l196; l200: ; /*IF*/if (rT52skip1(C,'\54')) { _state=1; } else if (((C)->_cc)==('\135')) { /*IF*/if (!(_generic_list)) { rT52wcp(C,(T0 *)ms67_52); {T116 *n=((T116*)se_new(116)); /*[IRF3:make*//*AW*/(n)->_base_class_name=(_base_class_name);/*]*/ C->_last_class_type=(T0 *)n;}} else { {T117 *n=((T117*)se_new(117)); rT117make(n,_base_class_name,_generic_list); C->_last_class_type=(T0 *)n;}} /*FI*/C->_ok=rT52skip1(C,'\135'); _state=3; } else if (rT52a_type(C)) { /*IF*/if (!(_generic_list)) { _generic_list=ma(106,0,1,(C)->_last_type); } else { rT106add_last((T106*)_generic_list,(C)->_last_type); } /*FI*/rT52warning(XrT60start_position((C)->_last_type),(T0 *)ms202_52); } else { rT52fcp(C,(T0 *)ms68_52); _state=3; } /*FI*/ l196: ; } } } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_identifier(T52 *C){ int R=0; int _do_warning=0; int _state=0; /*IF*/if (rT3is_letter((C)->_cc)) { rT71make((T71*)rT52tmp_name(),(C)->_line,(C)->_column); rT71extend((T71*)rT52tmp_name(),(C)->_cc); while (!((_state)>(0))) { rT52next_char(C); {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=57)) goto l202; if (95 == iv1) goto l202; if ((97<=iv1)&&(iv1<=122)) goto l202; goto l203; l202: ; rT71extend((T71*)rT52tmp_name(),(C)->_cc); goto l201; l203: ; if ((65<=iv1)&&(iv1<=90)) goto l204; goto l205; l204: ; _do_warning=1; rT71extend((T71*)rT52tmp_name(),rT3to_lower((C)->_cc)); goto l201; l205: ; _state=1; l201: ; } } /*IF*/if (rT71isa_keyword((T71*)rT52tmp_name())) { _state=rT71count((T71*)rT52tmp_name()); while (!((_state)==(0))) { _state=(_state)-(1); rT52prev_char(C); } } else { R=1; rT52skip_comments(C); /*IF*/if (_do_warning) { rT52warning(rT71start_position((T71*)rT52tmp_name()),(T0 *)ms26_52); } /*FI*/} /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_alias(T52 *C){ T0* R=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms104_52)) { /*IF*/if (!(rT52a_manifest_string(C))) { rT52fcp(C,(T0 *)ms105_52); } else { R=((T78*)(C)->_last_manifest_string)->_to_string; } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_base_class_name(T52 *C){ int R=0; int _do_warning=0; int _state=0; /*IF*/if (rT3is_letter((C)->_cc)) { /*IF*/if (((C)->_cc)>=('a')) { _do_warning=1; C->_cc=rT3to_upper((C)->_cc); } /*FI*/rT71make((T71*)rT52tmp_name(),(C)->_line,(C)->_column); rT71extend((T71*)rT52tmp_name(),(C)->_cc); while (!((_state)>(0))) { rT52next_char(C); {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=57)) goto l207; if ((65<=iv1)&&(iv1<=90)) goto l207; if (95 == iv1) goto l207; goto l208; l207: ; rT71extend((T71*)rT52tmp_name(),(C)->_cc); goto l206; l208: ; if ((97<=iv1)&&(iv1<=122)) goto l209; goto l210; l209: ; _do_warning=1; rT71extend((T71*)rT52tmp_name(),rT3to_upper((C)->_cc)); goto l206; l210: ; _state=1; l206: ; } } /*IF*/if (rT71isa_keyword((T71*)rT52tmp_name())) { _state=rT71count((T71*)rT52tmp_name()); while (!((_state)==(0))) { _state=(_state)-(1); rT52prev_char(C); } } else { R=1; rT52skip_comments(C); /*IF*/if (_do_warning) { rT52warning(rT71start_position((T71*)rT52tmp_name()),(T0 *)ms25_52); } /*FI*/C->_last_class_name=rT71to_class_name((T71*)rT52tmp_name()); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_base_type(T52 *C){ int R=0; T0* _sp=NULL; R=1; /*IF*/if (rT52a_keyword(C,(T0 *)ms36_27)) { {T89 *n=((T89*)se_new(89)); rT89make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms37_27)) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (((rT52skip1(C,'\133'))&&(rT52a_type(C)))&&(rT52skip1(C,'\135'))) { {T105 *n=((T105*)se_new(105)); rT105make(n,_sp,(C)->_last_type); C->_last_base_type=(T0 *)n;}} else { rT52fcp(C,(T0 *)ms42_52); } /*FI*/} else if (rT52a_keyword(C,(T0 *)ms40_27)) { {T107 *n=((T107*)se_new(107)); rT107make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms42_27)) { {T109 *n=((T109*)se_new(109)); rT109make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms45_27)) { {T110 *n=((T110*)se_new(110)); rT110make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms49_27)) { {T111 *n=((T111*)se_new(111)); rT111make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms52_27)) { {T112 *n=((T112*)se_new(112)); rT112make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms53_27)) { {T113 *n=((T113*)se_new(113)); rT113make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms55_27)) { {T114 *n=((T114*)se_new(114)); rT114make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else if (rT52a_keyword(C,(T0 *)ms57_27)) { {T115 *n=((T115*)se_new(115)); rT115make(n,rT52pos((C)->_start_line,(C)->_start_column)); C->_last_base_type=(T0 *)n;}} else { R=0; } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_ascii_code(T52 *C){ int _counter=0; rT52next_char(C); _counter=0; C->_last_ascii_code=0; while (!((((_counter)>(3))||(((C)->_cc)==('\57'))))) { {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=57)) goto l212; goto l213; l212: ; C->_last_ascii_code=(((C)->_last_ascii_code)*(10))+(rT3value((C)->_cc)); goto l211; l213: ; rT52fcp(C,(T0 *)ms21_52); l211: ; } _counter=(_counter)+(1); rT52next_char(C); } /*IF*/if ((_counter)==(0)) { rT52fcp(C,(T0 *)ms22_52); } else if ((_counter)>(3)) { rT52fcp(C,(T0 *)ms23_52); } else { } /*FI*/}/*EIFFEL_PARSER*/int rT52a_actual(T52 *C){ int R=0; /*IF*/if (rT52skip1(C,'\44')) { /*IF*/if (rT52a_identifier(C)) { {T176 *n=((T176*)se_new(176)); /*[IRF3:make*//*AW*/(n)->_feature_name=(rT71to_feature_name((T71*)rT52tmp_name()));/*]*/ C->_last_expression=(T0 *)n;}R=1; } else { rT52fcp(C,(T0 *)ms199_52); } /*FI*/} else if (rT52a_expression(C)) { R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_actuals(T52 *C){ T0* R=NULL; T0* _args=NULL; /*IF*/if (rT52skip1(C,'\50')) { while (!(!(rT52a_actual(C)))) { /*IF*/if (!(_args)) { _args=ma(83,0,1,(C)->_last_expression); } else { XrT83add_last(_args,(C)->_last_expression); } /*FI*/C->_ok=rT52skip1(C,'\54'); } /*IF*/if (!(_args)) { rT52wcp(C,(T0 *)ms33_52); } else { {T173 *n=((T173*)se_new(173)); /*[IRF3:make*//*AW*/(n)->_list=(_args);/*]*/ R=(T0 *)n;} } /*FI*//*IF*/if (!(rT52skip1(C,'\51'))) { rT52fcp(C,(T0 *)ms34_52); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_clients(T52 *C){ T0* R=NULL; int _state=0; T0* _list=NULL; T0* _sp=NULL; /*IF*/if (rT52skip1(C,'\173')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} while (!((_state)>(3))) { {int iv1=_state; if (0 == iv1) goto l215; goto l216; l215: ; /*IF*/if (rT52a_base_class_name(C)) { _list=ma(125,0,1,(C)->_last_class_name); _state=2; } else if (rT52skip1(C,'\175')) { _state=4; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms204_52); C->_ok=rT52skip1(C,'\54'); } else { _state=3; } /*FI*/goto l214; l216: ; if (1 == iv1) goto l217; goto l218; l217: ; /*IF*/if (rT52a_base_class_name(C)) { rT125add_last((T125*)_list,(C)->_last_class_name); _state=2; } else if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms204_52); C->_ok=rT52skip1(C,'\54'); } else if (((C)->_cc)==('\175')) { rT52wcp(C,(T0 *)ms69_52); C->_ok=rT52skip1(C,'\175'); _state=4; } else { _state=3; } /*FI*/goto l214; l218: ; if (2 == iv1) goto l219; goto l220; l219: ; /*IF*/if (rT52skip1(C,'\54')) { _state=1; } else if (rT52skip1(C,'\175')) { _state=4; } else if (rT52a_base_class_name(C)) { rT52warning(((T49*)(C)->_last_class_name)->_start_position,(T0 *)ms202_52); rT125add_last((T125*)_list,(C)->_last_class_name); } else { _state=3; } /*FI*/goto l214; l220: ; rT52fcp(C,(T0 *)ms208_52); _state=4; l214: ; } } {T123 *n=((T123*)se_new(123)); rT123make(n,_sp,_list); R=(T0 *)n;} } else { {T123 *n=((T123*)se_new(123)); /*[IRF3:omitted*//*]*/ R=(T0 *)n;} } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52go_back(T52 *C,T0* a1){ rT52go_back_at(C,((T47*)a1)->_line,((T47*)a1)->_column); }/*EIFFEL_PARSER*/int rT52a_real_constant(T52 *C){ int R=0; int _old_column=0; int _old_line=0; _old_line=(C)->_line; _old_column=(C)->_column; /*IF*/if (rT52skip1(C,'\53')) { /*IF*/if (rT52a_real(C)) { R=1; } else { rT52go_back_at(C,_old_line,_old_column); } /*FI*/} else if (rT52skip1(C,'\55')) { /*IF*/if (rT52a_real(C)) { C->_last_real_constant=rT81_px45((T81*)(C)->_last_real_constant); R=1; } else { rT52go_back_at(C,_old_line,_old_column); } /*FI*/} else if (rT52a_real(C)) { R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_real(T52 *C){ int R=0; float _frac_i=0; float _frac_part=0; int _integral_part=0; int _back_count=0; int _exponent_sign=0; int _exponent=0; int _state=0; T0* _ts=NULL; T0* _sp=NULL; /*IF*/if ((rT3is_digit((C)->_cc))||(((C)->_cc)==('\56'))) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_line,(C)->_column); _sp=(T0 *)n;} _exponent_sign=1; _frac_i=((float)1.); /*IF*/if (((C)->_cc)==('\56')) { _state=5; } else { _integral_part=rT3value((C)->_cc); } /*FI*/while (!((_state)>(11))) { rT52next_char(C); _back_count=(_back_count)+(1); {int iv1=_state; if (0 == iv1) goto l222; goto l223; l222: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l225; goto l226; l225: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); goto l224; l226: ; if (46 == iv2) goto l227; goto l228; l227: ; _state=4; goto l224; l228: ; _state=13; l224: ; } goto l221; l223: ; if (1 == iv1) goto l229; goto l230; l229: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l232; goto l233; l232: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); _state=2; goto l231; l233: ; rT52fcp(C,(T0 *)ms206_52); l231: ; } goto l221; l230: ; if (2 == iv1) goto l234; goto l235; l234: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l237; goto l238; l237: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); _state=3; goto l236; l238: ; rT52fcp(C,(T0 *)ms206_52); l236: ; } goto l221; l235: ; if (3 == iv1) goto l239; goto l240; l239: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l242; goto l243; l242: ; _integral_part=((_integral_part)*(10))+(rT3value((C)->_cc)); _state=0; goto l241; l243: ; rT52fcp(C,(T0 *)ms206_52); l241: ; } goto l221; l240: ; if (4 == iv1) goto l244; goto l245; l244: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l247; goto l248; l247: ; _frac_i=((float)10.); _frac_part=(rT2to_real(rT3value((C)->_cc)))/(_frac_i); _state=6; goto l246; l248: ; if (69 == iv2) goto l249; if (101 == iv2) goto l249; goto l250; l249: ; _state=10; goto l246; l250: ; _state=12; l246: ; } goto l221; l245: ; if (5 == iv1) goto l251; goto l252; l251: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l254; goto l255; l254: ; _frac_i=((float)10.); _frac_part=(rT2to_real(rT3value((C)->_cc)))/(_frac_i); _state=6; goto l253; l255: ; _state=13; l253: ; } goto l221; l252: ; if (6 == iv1) goto l256; goto l257; l256: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l259; goto l260; l259: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); goto l258; l260: ; if (69 == iv2) goto l261; if (101 == iv2) goto l261; goto l262; l261: ; _state=10; goto l258; l262: ; if (95 == iv2) goto l263; goto l264; l263: ; _state=7; goto l258; l264: ; _state=12; l258: ; } goto l221; l257: ; if (7 == iv1) goto l265; goto l266; l265: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l268; goto l269; l268: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); _state=8; goto l267; l269: ; rT52fcp(C,(T0 *)ms198_52); l267: ; } goto l221; l266: ; if (8 == iv1) goto l270; goto l271; l270: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l273; goto l274; l273: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); _state=9; goto l272; l274: ; rT52fcp(C,(T0 *)ms198_52); l272: ; } goto l221; l271: ; if (9 == iv1) goto l275; goto l276; l275: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l278; goto l279; l278: ; _frac_i=(_frac_i)*(((float)10.)); _frac_part=(_frac_part)+((rT2to_real(rT3value((C)->_cc)))/(_frac_i)); _state=6; goto l277; l279: ; rT52fcp(C,(T0 *)ms198_52); l277: ; } goto l221; l276: ; if (10 == iv1) goto l280; goto l281; l280: ; {int iv2=(C)->_cc; if (43 == iv2) goto l283; goto l284; l283: ; _state=11; goto l282; l284: ; if (45 == iv2) goto l285; goto l286; l285: ; _exponent_sign=-(1); _state=11; goto l282; l286: ; if ((48<=iv2)&&(iv2<=57)) goto l287; goto l288; l287: ; _exponent=rT3value((C)->_cc); _state=11; goto l282; l288: ; rT52fcp(C,(T0 *)ms30_52); _state=13; l282: ; } goto l221; l281: ; {int iv2=(C)->_cc; if ((48<=iv2)&&(iv2<=57)) goto l290; goto l291; l290: ; _exponent=((_exponent)*(10))+(rT3value((C)->_cc)); goto l289; l291: ; _state=12; l289: ; } l221: ; } } /*IF*/if ((_state)==(12)) { _ts=rT7substring((T7*)(C)->_current_line,((T47*)_sp)->_column,((C)->_column)-(1)); {T81 *n=((T81*)se_new(81)); rT81make(n,_sp,_ts,_integral_part,_frac_part,(_exponent)*(_exponent_sign)); C->_last_real_constant=(T0 *)n;} R=1; rT52skip_comments(C); } else { while (!((_back_count)==(0))) { _back_count=(_back_count)-(1); rT52prev_char(C); } } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52go_back_at(T52 *C,int a1,int a2){ C->_line=a1; C->_column=a2; C->_current_line=rT62item((C)->_line); /*IF*/if (((C)->_column)==((((T7*)(C)->_current_line)->_count)+(1))) { C->_cc='\12'; } else if (((C)->_column)==(0)) { C->_cc='\0'; } else { C->_cc=rT7item((T7*)(C)->_current_line,(C)->_column); } /*FI*/}/*EIFFEL_PARSER*/int rT52a_binary(T52 *C,T0* a1){ int R=0; R=1; /*IF*/if (rT52skip2(C,'\74','\75')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms43_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip2(C,'\76','\75')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms44_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip2(C,'\57','\57')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms45_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip2(C,'\134','\134')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms46_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\53')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms95_27,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\55')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms96_27,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\52')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms47_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\57')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms125_27,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\76')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms48_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\74')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms49_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52skip1(C,'\136')) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms50_52,a1); C->_last_binary=(T0 *)n;} } else if (rT52a_keyword(C,(T0 *)ms122_27)) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms122_27,a1); C->_last_binary=(T0 *)n;} } else if (rT52a_keyword(C,(T0 *)ms117_27)) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms117_27,a1); C->_last_binary=(T0 *)n;} } else if (rT52a_keyword(C,(T0 *)ms59_27)) { /*IF*/if (rT52a_keyword(C,(T0 *)ms120_27)) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms60_27,a1); C->_last_binary=(T0 *)n;} } else { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms59_27,a1); C->_last_binary=(T0 *)n;} } /*FI*/} else if (rT52a_keyword(C,(T0 *)ms81_27)) { /*IF*/if (rT52a_keyword(C,(T0 *)ms114_27)) { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms82_27,a1); C->_last_binary=(T0 *)n;} } else { {T72 *n=((T72*)se_new(72)); rT72make(n,(T0 *)ms81_27,a1); C->_last_binary=(T0 *)n;} } /*FI*/} else { C->_last_binary=NULL; R=0; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_creation(T52 *C){ int R=0; int _state=0; T0* _call=NULL; T0* _proc_name=NULL; T0* _writable=NULL; T0* _type=NULL; T0* _sp=NULL; while (!((_state)>(6))) { {int iv1=_state; if (0 == iv1) goto l293; goto l294; l293: ; /*IF*/if (rT52skip1(C,'\41')) { {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} _state=1; } else { _state=7; } /*FI*/goto l292; l294: ; if (1 == iv1) goto l295; goto l296; l295: ; /*IF*/if (rT52a_type(C)) { _type=(C)->_last_type; /*IF*/if (XrT60is_anchored(_type)) { rT52warning(XrT60start_position(_type),(T0 *)ms76_52); } /*FI*/_state=2; } else if (rT52skip1(C,'\41')) { _state=3; } else { rT52fcp(C,(T0 *)ms77_52); _state=8; } /*FI*/goto l292; l296: ; if (2 == iv1) goto l297; goto l298; l297: ; /*IF*/if (rT52skip1(C,'\41')) { _state=3; } else { _state=8; rT52fcp(C,(T0 *)ms78_52); } /*FI*/goto l292; l298: ; if (3 == iv1) goto l299; goto l300; l299: ; /*IF*/if (rT52a_identifier(C)) { /*IF*/if (rT52a_current(C)) { _state=8; rT52error(XrT70start_position((C)->_last_expression),(T0 *)ms79_52); } else if (rT52a_argument(C)) { _state=8; rT52error(XrT70start_position((C)->_last_expression),(T0 *)ms80_52); } else if ((rT52a_result(C))||(rT52a_local_variable(C))) { _writable=(C)->_last_expression; _state=4; } else { _writable=rT71to_feature_name((T71*)rT52tmp_name()); _state=4; } /*FI*/} else { _state=8; rT52fcp(C,(T0 *)ms81_52); } /*FI*/goto l292; l300: ; if (4 == iv1) goto l301; goto l302; l301: ; /*IF*/if (rT52skip1unless2(C,'\56','\56')) { _state=5; } else { _state=7; } /*FI*/goto l292; l302: ; if (5 == iv1) goto l303; goto l304; l303: ; /*IF*/if (rT52a_identifier(C)) { _proc_name=rT71to_feature_name((T71*)rT52tmp_name()); _state=6; } else { _state=8; rT52fcp(C,(T0 *)ms82_52); } /*FI*/goto l292; l304: ; /*IF*/if (((C)->_cc)==('\50')) { _call=rT52to_proc_call(C,_writable,_proc_name,rT52a_actuals(C)); } else { {T181 *n=((T181*)se_new(181)); rT181make(n,_writable,_proc_name); _call=(T0 *)n;}} /*FI*/_state=7; l292: ; } } /*IF*/if (((_state)==(7))&&(((int)_sp))) { R=1; /*IF*/if (((!(_type))&&(!(_call)))) { {T246 *n=((T246*)se_new(246)); rT246make(n,_sp,_writable); C->_last_instruction=(T0 *)n;}} else if (((((int)_type))&&(!(_call)))) { {T249 *n=((T249*)se_new(249)); rT249make(n,_sp,_type,_writable); C->_last_instruction=(T0 *)n;}} else if (((!(_type))&&(((int)_call)))) { {T251 *n=((T251*)se_new(251)); rT251make(n,_sp,_writable,_call); C->_last_instruction=(T0 *)n;}} else { {T253 *n=((T253*)se_new(253)); rT253make(n,_sp,_type,_writable,_call); C->_last_instruction=(T0 *)n;}} /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_creation_clause(T52 *C){ T0* _creation_clause=NULL; T0* _list=NULL; T0* _comments=NULL; T0* _clients=NULL; _clients=rT52a_clients(C); _comments=rT52get_comments(C); /*IF*/if (rT52a_feature_list(C)) { _list=(C)->_last_feature_list; {T132 *n=((T132*)se_new(132)); rT132make(n,_clients,_comments,_list); _creation_clause=(T0 *)n;} rT51add_creation_clause((T51*)(C)->_last_base_class,_creation_clause); } else { /*IF*/if (((((int)_comments))||(((int)_clients)))) { /*IF*/if (((int)_comments)) { rT46add_position(((T61*)_comments)->_start_position); } /*FI*//*IF*/if (((int)_clients)) { rT46add_position(((T123*)_clients)->_start_position); } /*FI*/rT46warning((T46*)oRBC27eh,(T0 *)ms83_52); } /*FI*/} /*FI*/}/*EIFFEL_PARSER*/int rT52a_argument(T52 *C){ int R=0; int _rank=0; /*IF*/if (((int)(C)->_arguments)) { _rank=rT95rank_of((T95*)(C)->_arguments,((T71*)rT52tmp_name())->_to_string); /*IF*/if ((_rank)>(0)) { C->_last_expression=rT71to_argument_name((T71*)rT52tmp_name(),(C)->_arguments,_rank); R=1; } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_after_a_dot(T52 *C,int a1,T0* a2){ T0* _eal=NULL; T0* _fn=NULL; /*IF*/if (rT52a_identifier(C)) { /*IF*/if (((rT52a_result(C))||(rT52a_void(C)))||(rT52a_current(C))) { rT46add_position(XrT70start_position((C)->_last_expression)); rT46error((T46*)oRBC27eh,(T0 *)ms35_52); } /*FI*/_fn=rT71to_feature_name((T71*)rT52tmp_name()); _eal=rT52a_actuals(C); rT52a_r10(C,a1,a2,_fn,_eal); } else { rT52fcp(C,(T0 *)ms36_52); } /*FI*/}/*EIFFEL_PARSER*/void rT52a_redefine_list(T52 *C){ /*IF*/if (rT52a_feature_list(C)) { rT118set_redefine((T118*)(C)->_last_parent,(C)->_last_feature_list); } /*FI*/}/*EIFFEL_PARSER*/int rT52a_index_clause(T52 *C){ int R=0; T0* _index_clause=NULL; /*IF*/if (rT52a_feature_name(C)) { R=1; /*IF*/if (rT52skip1(C,'\72')) { {T67 *n=((T67*)se_new(67)); /*[IRF3:make*//*AW*/(n)->_index=(/*XrT*FEATURE_NAME*/((T68*)(C)->_last_feature_name)->_to_string);/*]*/ _index_clause=(T0 *)n;} /*IF*/if (rT52a_index_value(C)) { rT67add_index_value((T67*)_index_clause,(C)->_last_index_value); } else { rT52fcp(C,(T0 *)ms200_52); } /*FI*/} else { {T67 *n=((T67*)se_new(67)); /*[IRF3:make*//*AW*/(n)->_index=(NULL);/*]*/ _index_clause=(T0 *)n;} rT67add_index_value((T67*)_index_clause,(C)->_last_feature_name); } /*FI*/} else if (rT52a_manifest_constant(C)) { R=1; {T67 *n=((T67*)se_new(67)); /*[IRF3:make*//*AW*/(n)->_index=(NULL);/*]*/ _index_clause=(T0 *)n;} rT67add_index_value((T67*)_index_clause,(C)->_last_manifest_constant); } /*FI*//*IF*/if (R) { while (!(!(rT52skip1(C,'\54')))) { /*IF*/if (rT52a_index_value(C)) { rT67add_index_value((T67*)_index_clause,(C)->_last_index_value); } else { rT52fcp(C,(T0 *)ms200_52); } /*FI*/} rT51add_index_clause((T51*)(C)->_last_base_class,_index_clause); } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_index_list(T52 *C){ while (!(!(rT52a_index_clause(C)))) { C->_ok=rT52skip1(C,'\73'); } }/*EIFFEL_PARSER*/void rT52a_indexing(T52 *C){ /*IF*/if (rT52a_keyword(C,(T0 *)ms115_52)) { rT52a_index_list(C); } /*FI*/}/*EIFFEL_PARSER*/int rT52a_index_value(T52 *C){ int R=0; /*IF*/if (rT52a_feature_name(C)) { C->_last_index_value=(C)->_last_feature_name; R=1; } else if (rT52a_manifest_constant(C)) { C->_last_index_value=(C)->_last_manifest_constant; R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_tag_mark(T52 *C){ int R=0; /*IF*/if (rT52a_identifier(C)) { /*IF*/if (rT52skip1unless2(C,'\72','\75')) { R=1; C->_last_tag_mark=rT71to_tag_name((T71*)rT52tmp_name()); } else { C->_last_tag_mark=NULL; rT52go_back_at(C,((T71*)rT52tmp_name())->_li,((T71*)rT52tmp_name())->_co); } /*FI*/} else { C->_last_tag_mark=NULL; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_manifest_constant(T52 *C){ int R=0; /*IF*/if (rT52a_boolean_constant(C)) { C->_last_manifest_constant=(C)->_last_boolean_constant; R=1; } else if (rT52a_character_constant(C)) { C->_last_manifest_constant=(C)->_last_character_constant; R=1; } else if (rT52a_manifest_string(C)) { C->_last_manifest_constant=(C)->_last_manifest_string; R=1; } else if (rT52a_bit_constant(C)) { C->_last_manifest_constant=(C)->_last_bit_constant; R=1; } else if (rT52a_real_constant(C)) { C->_last_manifest_constant=(C)->_last_real_constant; R=1; } else if (rT52a_integer_constant(C)) { C->_last_manifest_constant=(C)->_last_integer_constant; R=1; } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_manifest_string(T52 *C){ int R=0; int _state=0; /*IF*/if (((C)->_cc)==('\42')) { R=1; C->_ms_numbering=((C)->_ms_numbering)+(1); {T78 *n=((T78*)se_new(78)); rT78make(n,rT52pos((C)->_line,(C)->_column),(C)->_ms_numbering); C->_last_manifest_string=(T0 *)n;} while (!((_state)>(3))) { rT52next_char(C); {int iv1=_state; if (0 == iv1) goto l306; goto l307; l306: ; {int iv2=(C)->_cc; if (10 == iv2) goto l309; goto l310; l309: ; rT52fcp(C,(T0 *)ms205_52); goto l308; l310: ; if (34 == iv2) goto l311; goto l312; l311: ; _state=4; goto l308; l312: ; if (37 == iv2) goto l313; goto l314; l313: ; _state=1; goto l308; l314: ; rT78add((T78*)(C)->_last_manifest_string,(C)->_cc); l308: ; } goto l305; l307: ; if (1 == iv1) goto l315; goto l316; l315: ; _state=0; {int iv2=(C)->_cc; if (10 == iv2) goto l318; goto l319; l318: ; _state=3; goto l317; l319: ; if (65 == iv2) goto l320; goto l321; l320: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\100'); goto l317; l321: ; if (66 == iv2) goto l322; goto l323; l322: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\10'); goto l317; l323: ; if (67 == iv2) goto l324; goto l325; l324: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\136'); goto l317; l325: ; if (68 == iv2) goto l326; goto l327; l326: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\44'); goto l317; l327: ; if (70 == iv2) goto l328; goto l329; l328: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\14'); goto l317; l329: ; if (72 == iv2) goto l330; goto l331; l330: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\134'); goto l317; l331: ; if (76 == iv2) goto l332; goto l333; l332: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\176'); goto l317; l333: ; if (78 == iv2) goto l334; goto l335; l334: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\12'); goto l317; l335: ; if (81 == iv2) goto l336; goto l337; l336: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\140'); goto l317; l337: ; if (82 == iv2) goto l338; goto l339; l338: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\15'); goto l317; l339: ; if (83 == iv2) goto l340; goto l341; l340: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\43'); goto l317; l341: ; if (84 == iv2) goto l342; goto l343; l342: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\11'); goto l317; l343: ; if (85 == iv2) goto l344; goto l345; l344: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\0'); goto l317; l345: ; if (86 == iv2) goto l346; goto l347; l346: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\174'); goto l317; l347: ; if (37 == iv2) goto l348; goto l349; l348: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\45'); goto l317; l349: ; if (39 == iv2) goto l350; goto l351; l350: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\47'); goto l317; l351: ; if (34 == iv2) goto l352; goto l353; l352: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\42'); goto l317; l353: ; if (40 == iv2) goto l354; goto l355; l354: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\133'); goto l317; l355: ; if (41 == iv2) goto l356; goto l357; l356: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\135'); goto l317; l357: ; if (60 == iv2) goto l358; goto l359; l358: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\173'); goto l317; l359: ; if (62 == iv2) goto l360; goto l361; l360: ; rT78add_percent((T78*)(C)->_last_manifest_string,'\175'); goto l317; l361: ; if (47 == iv2) goto l362; goto l363; l362: ; rT52a_ascii_code(C); rT78add_ascii((T78*)(C)->_last_manifest_string,(C)->_last_ascii_code); goto l317; l363: ; if (9 == iv2) goto l364; if (32 == iv2) goto l364; goto l365; l364: ; _state=2; goto l317; l365: ; rT52fcp(C,(T0 *)ms27_52); _state=0; l317: ; } goto l305; l316: ; if (2 == iv1) goto l366; goto l367; l366: ; {int iv2=(C)->_cc; if (10 == iv2) goto l369; goto l370; l369: ; _state=3; goto l368; l370: ; if (9 == iv2) goto l371; if (32 == iv2) goto l371; goto l372; l371: ; goto l368; l372: ; rT52fcp(C,(T0 *)ms28_52); l368: ; } goto l305; l367: ; {int iv2=(C)->_cc; if (9 == iv2) goto l374; if (32 == iv2) goto l374; goto l375; l374: ; goto l373; l375: ; if (37 == iv2) goto l376; goto l377; l376: ; rT78break_line((T78*)(C)->_last_manifest_string); _state=0; goto l373; l377: ; if (10 == iv2) goto l378; goto l379; l378: ; rT52fcp(C,(T0 *)ms205_52); _state=0; goto l373; l379: ; rT52fcp(C,(T0 *)ms29_52); _state=0; l373: ; } l305: ; } } rT52next_char(C); rT52skip_comments(C); } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_infix(T52 *C){ int R=0; T0* _sp=NULL; /*IF*/if (rT52a_keyword(C,(T0 *)ms116_52)) { R=1; {T47 *n=((T47*)se_new(47)); rT47make(n,(C)->_start_line,(C)->_start_column); _sp=(T0 *)n;} /*IF*/if (((C)->_cc)==('\42')) { rT52next_char(C); } else { rT52wcp(C,(T0 *)ms117_52); } /*FI*//*IF*/if (rT52a_binary(C,_sp)) { C->_last_infix=(C)->_last_binary; } else if (rT52a_free_operator(C)) { C->_last_infix=rT71to_infix_name((T71*)rT52tmp_operator(),_sp); } else { rT52fcp(C,(T0 *)ms118_52); } /*FI*//*IF*/if (!(rT52skip1(C,'\42'))) { rT52wcp(C,(T0 *)ms119_52); } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_free_operator(T52 *C){ int R=0; /*IF*/if ((((((C)->_cc)==('\100'))||(((C)->_cc)==('\43')))||(((C)->_cc)==('\174')))||(((C)->_cc)==('\46'))) { R=1; rT71make((T71*)rT52tmp_operator(),(C)->_line,(C)->_column); rT71extend((T71*)rT52tmp_operator(),(C)->_cc); rT52next_char(C); while (!((((((C)->_cc)==('\12'))||(((C)->_cc)==('\40')))||(((C)->_cc)==('\11')))||(((C)->_cc)==('\42')))) { rT71extend((T71*)rT52tmp_operator(),(C)->_cc); rT52next_char(C); } rT52skip_comments(C); } /*FI*/return R; } /*EIFFEL_PARSER*/void rT52a_local_var_list(T52 *C,T0* a1){ int _state=0; int _rank=0; T0* _list=NULL; T0* _declaration=NULL; T0* _name_list=NULL; T0* _name=NULL; while (!((_state)>(4))) { {int iv1=_state; if (0 == iv1) goto l381; goto l382; l381: ; /*IF*/if (rT52a_identifier(C)) { _name=rT71to_local_name_declaration((T71*)rT52tmp_name()); _state=1; /*IF*/if (((int)(C)->_arguments)) { _rank=rT95rank_of((T95*)(C)->_arguments,((T184*)_name)->_to_string); /*IF*/if ((_rank)>(0)) { rT46add_position(((T184*)_name)->_start_position); rT46add_position(((T90*)rT95name((T95*)(C)->_arguments,_rank))->_start_position); rT46error((T46*)oRBC27eh,(T0 *)ms16_52); } /*FI*/} /*FI*/} else if (((((C)->_cc)==('\54'))||(((C)->_cc)==('\73')))) { rT52wcp(C,(T0 *)ms210_52); C->_ok=(rT52skip1(C,'\54'))||(rT52skip1(C,'\73')); } else { _state=5; } /*FI*/goto l380; l382: ; if (1 == iv1) goto l383; goto l384; l383: ; /*IF*/if (rT52skip1(C,'\72')) { /*IF*/if (((int)_name_list)) { rT185add_last((T185*)_name_list,_name); _name=NULL; } /*FI*/_state=3; } else { /*IF*/if (((C)->_cc)==('\73')) { rT52wcp(C,(T0 *)ms17_52); C->_ok=rT52skip1(C,'\73'); } else { C->_ok=rT52skip1(C,'\54'); } /*FI*//*IF*/if (!(_name_list)) { _name_list=ma(185,0,1,_name); } else { rT185add_last((T185*)_name_list,_name); } /*FI*/_name=NULL; _state=2; } /*FI*/goto l380; l384: ; if (2 == iv1) goto l385; goto l386; l385: ; /*IF*/if (rT52a_identifier(C)) { _name=rT71to_local_name_declaration((T71*)rT52tmp_name()); _state=1; /*IF*/if (((int)(C)->_arguments)) { _rank=rT95rank_of((T95*)(C)->_arguments,((T184*)_name)->_to_string); /*IF*/if ((_rank)>(0)) { rT46add_position(((T184*)_name)->_start_position); rT46add_position(((T90*)rT95name((T95*)(C)->_arguments,_rank))->_start_position); rT46error((T46*)oRBC27eh,(T0 *)ms18_52); } /*FI*/} /*FI*/} else if (((((C)->_cc)==('\54'))||(((C)->_cc)==('\73')))) { rT52wcp(C,(T0 *)ms210_52); C->_ok=(rT52skip1(C,'\54'))||(rT52skip1(C,'\73')); } else { _state=6; } /*FI*/goto l380; l386: ; if (3 == iv1) goto l387; goto l388; l387: ; /*IF*/if (rT52a_type(C)) { /*IF*/if (((int)_name_list)) { {T142 *n=((T142*)se_new(142)); rT142make(n,_name_list,(C)->_last_type); _declaration=(T0 *)n;}_name_list=NULL; } else { {T144 *n=((T144*)se_new(144)); rT144make(n,_name,(C)->_last_type); _declaration=(T0 *)n;}_name=NULL; } /*FI*//*IF*/if (!(_list)) { _list=ma(145,0,1,_declaration); } else { rT145add_last((T145*)_list,_declaration); } /*FI*/_state=4; } else { _state=6; } /*FI*/goto l380; l388: ; /*IF*/if (((C)->_cc)==('\54')) { rT52wcp(C,(T0 *)ms19_52); C->_ok=rT52skip1(C,'\54'); _state=0; } else { C->_ok=rT52skip1(C,'\73'); _state=0; } /*FI*/ l380: ; } } /*IF*/if ((_state)==(6)) { rT52fcp(C,(T0 *)ms20_52); } else if (((int)_list)) { {T139 *n=((T139*)se_new(139)); rT139make(n,a1,_list); C->_local_vars=(T0 *)n;} /*[IRF3:set_local_vars*//*AW*/((T136*)oRBC52tmp_feature)->_local_vars=((C)->_local_vars);/*]*/ } /*FI*/}/*EIFFEL_PARSER*/int rT52a_local_variable(T52 *C){ int R=0; int _rank=0; /*IF*/if (((int)(C)->_local_vars)) { _rank=rT139rank_of((T139*)(C)->_local_vars,((T71*)rT52tmp_name())->_to_string); /*IF*/if ((_rank)>(0)) { C->_last_expression=rT71to_local_name((T71*)rT52tmp_name(),(C)->_local_vars,_rank); R=1; } /*FI*/} /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_compound2(T52 *C,T0* a1,T0* a2){ T0* R=NULL; T0* _instruction=NULL; T0* _list=NULL; T0* _hc=NULL; _hc=rT52get_comments(C); while (!(((C)->_cc)!=('\73'))) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } while (!(((!(rT52a_instruction(C)))||((/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/)>(10))))) { _instruction=(C)->_last_instruction; /*IF*/if (((C)->_cc)==('\50')) { rT52wcp(C,(T0 *)ms203_52); } /*FI*/C->_ok=rT52skip1(C,'\73'); while (!(((C)->_cc)!=('\73'))) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } /*IF*/if ((/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (!(_list)) { _list=ma(223,0,1,XrT179add_comment(_instruction,rT52get_comments(C))); } else { rT223add_last((T223*)_list,XrT179add_comment(_instruction,rT52get_comments(C))); } /*FI*/} /*FI*/} /*IF*/if (!(rT52a_keyword(C,a2))) { rT46append((T0 *)ms70_52); rT46append(a1); rT46append((T0 *)ms71_52); rT46append(a2); rT52fcp(C,(T0 *)ms72_52); } /*FI*//*IF*/if ((((int)_hc))||(((int)_list))) { {T140 *n=((T140*)se_new(140)); rT140make(n,_hc,_list); R=(T0 *)n;} } /*FI*/return R; } /*EIFFEL_PARSER*/T0* rT52a_compound1(T52 *C,T0* a1){ T0* R=NULL; T0* _instruction=NULL; T0* _list=NULL; T0* _hc=NULL; _hc=rT52get_comments(C); while (!(((C)->_cc)!=('\73'))) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } while (!(((!(rT52a_instruction(C)))||((/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/)>(10))))) { _instruction=(C)->_last_instruction; /*IF*/if (((C)->_cc)==('\50')) { rT52wcp(C,(T0 *)ms203_52); } /*FI*/C->_ok=rT52skip1(C,'\73'); while (!(((C)->_cc)!=('\73'))) { rT52wcp(C,(T0 *)ms103_27); C->_ok=rT52skip1(C,'\73'); } /*IF*/if ((/*(IRF4*/((T46*)oRBC27eh)->_nb_errors/*)*/)==(0)) { /*IF*/if (!(_list)) { _list=ma(223,0,1,XrT179add_comment(_instruction,rT52get_comments(C))); } else { rT223add_last((T223*)_list,XrT179add_comment(_instruction,rT52get_comments(C))); } /*FI*/} /*FI*/} /*IF*/if ((((int)_hc))||(((int)_list))) { {T140 *n=((T140*)se_new(140)); rT140make(n,_hc,_list); R=(T0 *)n;} } /*FI*/return R; } /*EIFFEL_PARSER*/int rT52a_bit_constant(T52 *C){ int R=0; T0* _sequence=NULL; int _state=0; /*IF*/if ((((C)->_cc)==('0'))||(((C)->_cc)==('1'))) { {T7 *n=((T7*)se_new(7)); rT7make(n,16); _sequence=(T0 *)n;} rT7extend((T7*)_sequence,(C)->_cc); while (!((_state)>(0))) { rT52next_char(C); {int iv1=(C)->_cc; if ((48<=iv1)&&(iv1<=49)) goto l390; goto l391; l390: ; rT7extend((T7*)_sequence,(C)->_cc); goto l389; l391: ; if (66 == iv1) goto l392; if (98 == iv1) goto l392; goto l393; l392: ; {T79 *n=((T79*)se_new(79)); /*[IRF3:from_string*//*AW*/(n)->_value=(_sequence);/*]*/ C->_last_bit_constant=(T0 *)n;} rT52next_char(C); rT52skip_comments(C); _state=1; R=1; goto l389; l393: ; _state=((T7*)_sequence)->_count; while (!((_state)==(0))) { _state=(_state)-(1); rT52prev_char(C); } _state=2; l389: ; } } } /*FI*/return R; } /*CHARACTER*/int rT3same_as(T3 C,char a1){ int R=0; /*IF*/if ((C)==(a1)) { R=1; } else { {int iv1=((unsigned char)C); if ((65<=iv1)&&(iv1<=90)) goto l395; goto l396; l395: ; R=(C)==(rT3to_upper(a1)); goto l394; l396: ; if ((97<=iv1)&&(iv1<=122)) goto l397; goto l398; l397: ; R=(C)==(rT3to_lower(a1)); goto l394; l398: ; l394: ; } } /*FI*/return R; } /*CHARACTER*/char rT3to_upper(T3 C){ char R=0; /*IF*/if ((((unsigned char)C))<(97)) { R=C; } else if ((((unsigned char)C))>(122)) { R=C; } else { R=(((unsigned char)C))-(32); } /*FI*/return R; } /*CHARACTER*/int rT3is_digit(T3 C){ int R=0; {int iv1=C; if ((48<=iv1)&&(iv1<=57)) goto l400; goto l401; l400: ; R=1; goto l399; l401: ; l399: ; } return R; } /*CHARACTER*/int rT3is_letter(T3 C){ int R=0; {int iv1=C; if ((65<=iv1)&&(iv1<=90)) goto l403; if ((97<=iv1)&&(iv1<=122)) goto l403; goto l404; l403: ; R=1; goto l402; l404: ; l402: ; } return R; } /*CHARACTER*/int rT3is_separator(T3 C){ int R=0; {int iv1=C; if (0 == iv1) goto l406; if ((9<=iv1)&&(iv1<=10)) goto l406; if (13 == iv1) goto l406; if (32 == iv1) goto l406; goto l407; l406: ; R=1; goto l405; l407: ; l405: ; } return R; } /*CHARACTER*/int rT3_ix6261(T3 C,char a1){ int R=0; R=(((unsigned char)C))>=(((unsigned char)a1)); return R; } /*CHARACTER*/int rT3value(T3 C){ int R=0; R=(((unsigned char)C))-(48); return R; } /*CHARACTER*/char rT3to_lower(T3 C){ char R=0; /*IF*/if ((((unsigned char)C))<(65)) { R=C; } else if ((((unsigned char)C))>(90)) { R=C; } else { R=(((unsigned char)C))+(32); } /*FI*/return R; } /*ADDRESS_OF*/void rT176bracketed_print(T176 *C){ rT267put_character((T267*)oRBC27fmt,'\50'); rT176pretty_print(C); rT267put_character((T267*)oRBC27fmt,'\51'); }/*ADDRESS_OF*/void rT176error(/*C*/T0* a1,T0* a2){ rT46add_position(a1); rT46error((T46*)oRBC27eh,a2); }/*ADDRESS_OF*/T0* rT176add_comment(T176 *C,T0* a1){ T0* R=NULL; /*IF*/if ((!(a1))||((rT61count((T61*)a1))==(0))) { R=(T0 *)C; } else { {T226 *n=((T226*)se_new(226)); rT226make(n,(T0 *)C,a1); R=(T0 *)n;}} /*FI*/return R; } /*ADDRESS_OF*/void rT176print_as_target(T176 *C){ rT176error(rT176start_position(C),(T0 *)ms4_176); }/*ADDRESS_OF*/T0* rT176start_position(T176 *C){ T0* R=NULL; R=/*XrT*FEATURE_NAME*/((T68*)(C)->_feature_name)->_start_position; return R; } /*ADDRESS_OF*/void rT176pretty_print(T176 *C){ rT267put_character((T267*)oRBC27fmt,'\44'); XrT69pretty_print((C)->_feature_name); }/*DEFERRED_FUNCTION*/T0* rT209first_name(T209 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; } /*DEFERRED_FUNCTION*/void rT209error(/*C*/T0* a1,T0* a2){ rT46add_position(a1); rT46error((T46*)oRBC27eh,a2); }/*DEFERRED_FUNCTION*/T0* rT209start_position(T209 *C){ T0* R=NULL; R=/*XrT*FEATURE_NAME*/((T68*)rT209first_name(C))->_start_position; return R; } /*DEFERRED_FUNCTION*/void rT209pretty_print_arguments(T209 *C){ /*IF*/if (((int)(C)->_arguments)) { rT95pretty_print((T95*)(C)->_arguments); } /*FI*/}/*DEFERRED_FUNCTION*/void rT209pretty_print_one_name(/*C*/T0* a1){ /*IF*/if (/*XrT*FEATURE_NAME*/((T68*)a1)->_is_frozen) { rT267keyword((T267*)oRBC27fmt,(T0 *)ms11_64); } /*FI*/XrT69pretty_print(a1); }/*DEFERRED_FUNCTION*/void rT209pretty_print_names(T209 *C){ int _i=0; _i=1; rT209pretty_print_one_name(rT128item((T128*)(C)->_names,_i)); _i=(_i)+(1); while (!((_i)>(rT128count((T128*)(C)->_names)))) { rT267put_string((T267*)oRBC27fmt,(T0 *)ms10_64); rT209pretty_print_one_name(rT128item((T128*)(C)->_names,_i)); _i=(_i)+(1); } }/*DEFERRED_FUNCTION*/void rT209pretty_print_profile(T209 *C){ rT209pretty_print_names(C); /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT209pretty_print_arguments(C); /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(3);/*]*/ /*IF*/if (((int)(C)->_result_type)) { rT267put_string((T267*)oRBC27fmt,(T0 *)ms9_64); XrT60pretty_print((C)->_result_type); } /*FI*/}/*DEFERRED_FUNCTION*/void rT209pretty_print(T209 *C){ T0* _fn=NULL; /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(1);/*]*/ rT267indent((T267*)oRBC27fmt); rT209pretty_print_profile(C); rT267keyword((T267*)oRBC27fmt,(T0 *)ms1_158); /*IF*/if (((int)(C)->_obsolete_mark)) { /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT267indent((T267*)oRBC27fmt); rT267keyword((T267*)oRBC27fmt,(T0 *)ms2_158); rT78pretty_print((T78*)(C)->_obsolete_mark); } /*FI*//*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT267indent((T267*)oRBC27fmt); /*IF*/if (((int)(C)->_header_comment)) { rT61pretty_print((T61*)(C)->_header_comment); } /*FI*//*IF*/if (((int)(C)->_require_assertion)) { /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT137pretty_print((T137*)(C)->_require_assertion); } /*FI*//*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT267indent((T267*)oRBC27fmt); /*[IRF3:pretty_print_routine_body*/rT267put_string((T267*)oRBC27fmt,(T0 *)ms1_207); /*]*/ /*IF*/if (((int)(C)->_ensure_assertion)) { /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT159pretty_print((T159*)(C)->_ensure_assertion); } /*FI*//*IF*/if (((int)(C)->_rescue_compound)) { /*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT267indent((T267*)oRBC27fmt); rT267keyword((T267*)oRBC27fmt,(T0 *)ms3_158); rT140pretty_print((T140*)(C)->_rescue_compound); } /*FI*//*[IRF3:set_indent_level*//*AW*/((T267*)oRBC27fmt)->_indent_level=(2);/*]*/ rT267indent((T267*)oRBC27fmt); rT267keyword((T267*)oRBC27fmt,(T0 *)ms4_158); /*IF*/if ((((int)(C)->_end_comment))&&(!(rT61dummy((T61*)(C)->_end_comment)))) { rT61pretty_print((T61*)(C)->_end_comment); } else if (((T267*)oRBC27fmt)->_print_end_routine) { rT267put_string((T267*)oRBC27fmt,(T0 *)ms5_158); _fn=rT209first_name(C); /*IF*/if (XrT69is_prefix_name(_fn)) { rT267keyword((T267*)oRBC27fmt,(T0 *)ms6_158); rT267put_character((T267*)oRBC27fmt,'\42'); rT267put_string((T267*)oRBC27fmt,/*XrT*FEATURE_NAME*/((T68*)_fn)->_to_string); rT267put_character((T267*)oRBC27fmt,'\42'); } else if (XrT69is_infix_name(_fn)) { rT267keyword((T267*)oRBC27fmt,(T0 *)ms7_158); rT267put_character((T267*)oRBC27fmt,'\42'); rT267put_string((T267*)oRBC27fmt,/*XrT*FEATURE_NAME*/((T68*)_fn)->_to_string); rT267put_character((T267*)oRBC27fmt,'\42'); } else { rT267put_string((T267*)oRBC27fmt,/*XrT*FEATURE_NAME*/((T68*)_fn)->_to_string); } /*FI*/} /*FI*/rT267put_character((T267*)oRBC27fmt,'\12'); }/*DEFERRED_FUNCTION*/void rT209add_into(T209 *C,T0* a1){ T0* _fn=NULL; int _i=0; C->_base_class=rT47base_class((T47*)/*XrT*FEATURE_NAME*/((T68*)rT128item((T128*)(C)->_names,1))->_start_position); _i=1; while (!((_i)>(rT128count((T128*)(C)->_names)))) { _fn=rT128item((T128*)(C)->_names,_i); /*IF*/if (rT63has((T63*)a1,XrT69to_key(_fn))) { _fn=XrT64first_name(rT63at((T63*)a1,XrT69to_key(_fn))); rT46add_position(/*XrT*FEATURE_NAME*/((T68*)_fn)->_start_position); rT46add_position(/*XrT*FEATURE_NAME*/((T68*)rT128item((T128*)(C)->_names,_i))->_start_position); rT46error((T46*)oRBC27eh,(T0 *)ms12_64); rT46append(/*XrT*FEATURE_NAME*/((T68*)_fn)->_to_string); rT46error((T46*)oRBC27eh,(T0 *)ms102_27); } else { rT63put((T63*)a1,(T0 *)C,XrT69to_key(_fn)); } /*FI*/_i=(_i)+(1); } }/*DEFERRED_FUNCTION*/void rT209set_header_comment(T209 *C,T0* a1){ /*IF*/if ((((int)a1))&&((rT61count((T61*)a1))>(1))) { C->_end_comment=a1; } /*FI*/}/*DEFERRED_FUNCTION*/void rT209set_rescue_compound(T209 *C,T0* a1){ /*IF*/if ((((int)a1))&&(/*(IRF4*/1/*)*/)) { rT209error(rT209start_position(C),(T0 *)ms8_158); } /*FI*/C->_rescue_compound=a1; }/*DEFERRED_FUNCTION*/void rT209make_e_feature(T209 *C,T0* a1,T0* a2){ C->_names=a1; C->_result_type=a2; }/*DEFERRED_FUNCTION*/void rT209make_routine(T209 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){ rT209make_e_feature(C,a1,NULL); C->_header_comment=a4; C->_arguments=a2; C->_obsolete_mark=a3; C->_require_assertion=a5; }/*DEFERRED_FUNCTION*/void rT209make(T209 *C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6){ rT209make_routine(C,a1,a2,a4,a5,a6); C->_result_type=a3; }/*DEFERRED_PROCEDURE*/T0* rT208first_name(T208 *C){ T0* R=NULL; R=rT128item((T128*)(C)->_names,1); return R; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.