/*---------------------------------------------------------------------------* * ggcode.d - LIBERO dialog data definitions for ggcode.c. * * Generated by LIBERO 2.4 on 22 Jul, 2004, 16:52. * * Schema file used: lrschema.c. * *---------------------------------------------------------------------------*/ /*- Symbolic constants and event numbers ------------------------------------*/ #define _LR_STOP 0xFFFFL #define _LR_NULL_EVENT -2 enum { terminate_event = -1, abort_event = 0, anomaly_event = 1, append_event = 2, call_event = 3, close_event = 4, comment_event = 5, copy_event = 6, define_event = 7, delete_event = 8, direct_event = 9, echo_event = 10, else_event = 11, elsif_event = 12, end_for_event = 13, end_function_event = 14, end_if_event = 15, end_macro_event = 16, end_new_event = 17, end_of_script_event = 18, end_template_event = 19, end_while_event = 20, for_event = 21, function_event = 22, gsl_event = 23, if_event = 24, javascript_event = 25, last_event = 26, macro_event = 27, move_event = 28, new_event = 29, next_event = 30, ok_event = 31, output_event = 32, save_event = 33, script_stack_empty_event = 34, sort_event = 35, template_event = 36, text_event = 37, while_event = 38, xml_event = 39 }; enum { _LR_defaults_state = 2, _LR_STATE_after_init = 0, _LR_STATE_have_script_line = 1, _LR_STATE_defaults = 2 }; /*- Variables used by dialog interpreter ------------------------------------*/ typedef int event_t; /* Type for dialog entity */ typedef void (fsmfunct) (void); /* Address of FSM function */ static event_t _LR_event, /* Event for state transition */ _LR_state, /* Current dialog state */ _LR_savest, /* Saved dialog state */ _LR_index, /* Index into vector table */ the_next_event, /* Next event from module */ the_exception_event; /* Exception event from module */ static dbyte *_LR_vecptr; /* Pointer into vector table */ static Bool exception_raised; /* TRUE if exception raised */ /*- Function prototypes -----------------------------------------------------*/ #ifndef MODULE #define MODULE static void /* Libero dialog modules */ #endif local raise_exception (event_t event); MODULE initialise_the_program (void); MODULE get_external_event (void); MODULE get_next_script_line (void); MODULE store_symbol_definition (void); MODULE store_macro_definition (void); MODULE skip_macro_body (void); MODULE store_function_definition (void); MODULE skip_function_body (void); MODULE close_output_file (void); MODULE open_file_for_output (void); MODULE open_file_for_append (void); MODULE push_script_position (void); MODULE prepare_to_interpret_gsl (void); MODULE copy_direct_to_output (void); MODULE load_source_xml (void); MODULE load_source_javascript (void); MODULE initialise_macro_block (void); MODULE close_macro_block (void); MODULE pop_script_position (void); MODULE close_function_block (void); MODULE push_template_control (void); MODULE pop_template_control (void); MODULE initialise_for_block (void); MODULE iterate_for_block (void); MODULE initialise_while_block (void); MODULE iterate_while_block (void); MODULE iterate_for_or_while_block (void); MODULE terminate_for_or_while_block (void); MODULE skip_if_block_if_false (void); MODULE skip_else_block_always (void); MODULE skip_elsif_block_always (void); MODULE close_if_block (void); MODULE echo_text_to_console (void); MODULE return_abort_feedback (void); MODULE terminate_the_program (void); MODULE copy_line_to_output (void); MODULE copy_xml_item (void); MODULE delete_xml_item (void); MODULE move_xml_item (void); MODULE save_xml_file (void); MODULE initialise_new_block (void); MODULE close_new_block (void); MODULE sort_xml_items (void); MODULE verify_all_controls_closed (void); MODULE close_script_file (void); MODULE return_anomaly_feedback (void); /*- Static areas ------------------------------------------------------------*/ static dbyte _LR_nextst [][40] = { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,1,0,0,0,0,0,0,0,0 }, { 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 ,1,0,1,1,1,1,1,1,1,1 }, { 0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0 } }; static dbyte _LR_action [][40] = { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,1,0,0,0,0,0,0,0,0 }, { 28,0,6,11,16,1,30,2,31,8,27,24,25,18,13,26,12,35,37,15,20,17 ,4,7,23,10,22,3,32,34,21,0,5,33,38,36,14,29,19,9 }, { 0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0 } }; static dbyte _LR_vector [][4+1] = { {0}, {0,_LR_STOP}, {1,0,_LR_STOP}, {2,3,0,_LR_STOP}, {4,5,0,_LR_STOP}, {6,7,0,_LR_STOP}, {6,8,0,_LR_STOP}, {9,10,0,_LR_STOP}, {11,0,_LR_STOP}, {12,0,_LR_STOP}, {13,0,_LR_STOP}, {9,14,0,_LR_STOP}, {15,16,0,_LR_STOP}, {17,16,0,_LR_STOP}, {18,0,_LR_STOP}, {19,0,_LR_STOP}, {6,0,_LR_STOP}, {20,0,_LR_STOP}, {21,0,_LR_STOP}, {22,0,_LR_STOP}, {23,0,_LR_STOP}, {24,0,_LR_STOP}, {25,0,_LR_STOP}, {26,0,_LR_STOP}, {27,0,_LR_STOP}, {28,0,_LR_STOP}, {29,0,_LR_STOP}, {30,0,_LR_STOP}, {30,31,32,_LR_STOP}, {33,0,_LR_STOP}, {34,0,_LR_STOP}, {35,0,_LR_STOP}, {36,0,_LR_STOP}, {37,0,_LR_STOP}, {38,0,_LR_STOP}, {39,0,_LR_STOP}, {40,0,_LR_STOP}, {41,42,16,0,_LR_STOP}, {32,_LR_STOP}, {43,32,_LR_STOP} }; static fsmfunct *_LR_module [] = { get_next_script_line, store_symbol_definition, store_macro_definition, skip_macro_body, store_function_definition, skip_function_body, close_output_file, open_file_for_output, open_file_for_append, push_script_position, prepare_to_interpret_gsl, copy_direct_to_output, load_source_xml, load_source_javascript, initialise_macro_block, close_macro_block, pop_script_position, close_function_block, push_template_control, pop_template_control, initialise_for_block, iterate_for_block, initialise_while_block, iterate_while_block, iterate_for_or_while_block, terminate_for_or_while_block, skip_if_block_if_false, skip_else_block_always, skip_elsif_block_always, close_if_block, echo_text_to_console, return_abort_feedback, terminate_the_program, copy_line_to_output, copy_xml_item, delete_xml_item, move_xml_item, save_xml_file, initialise_new_block, close_new_block, sort_xml_items, verify_all_controls_closed, close_script_file, return_anomaly_feedback };