#include <stdio.h>#include <string.h>#include <errno.h>#include <stdlib.h>#include "ArabicParser.hpp"#include <cstring>#include <cctype>#include <cstdlib>#include <cstdio>#include <iostream>#include <fstream>| Classes | |
| struct | yy_buffer_state | 
| struct | yy_trans_info | 
| Defines | |
| #define | YY_INT_ALIGNED short int | 
| #define | yy_create_buffer Arabic_create_buffer | 
| #define | yy_delete_buffer Arabic_delete_buffer | 
| #define | yy_flex_debug Arabic_flex_debug | 
| #define | yy_init_buffer Arabic_init_buffer | 
| #define | yy_flush_buffer Arabic_flush_buffer | 
| #define | yy_load_buffer_state Arabic_load_buffer_state | 
| #define | yy_switch_to_buffer Arabic_switch_to_buffer | 
| #define | yyin Arabicin | 
| #define | yyleng Arabicleng | 
| #define | yylex Arabiclex | 
| #define | yylineno Arabiclineno | 
| #define | yyout Arabicout | 
| #define | yyrestart Arabicrestart | 
| #define | yytext Arabictext | 
| #define | yywrap Arabicwrap | 
| #define | yyalloc Arabicalloc | 
| #define | yyrealloc Arabicrealloc | 
| #define | yyfree Arabicfree | 
| #define | FLEX_SCANNER | 
| #define | YY_FLEX_MAJOR_VERSION 2 | 
| #define | YY_FLEX_MINOR_VERSION 5 | 
| #define | YY_FLEX_SUBMINOR_VERSION 35 | 
| #define | FLEX_BETA | 
| #define | INT8_MIN (-128) | 
| #define | INT16_MIN (-32767-1) | 
| #define | INT32_MIN (-2147483647-1) | 
| #define | INT8_MAX (127) | 
| #define | INT16_MAX (32767) | 
| #define | INT32_MAX (2147483647) | 
| #define | UINT8_MAX (255U) | 
| #define | UINT16_MAX (65535U) | 
| #define | UINT32_MAX (4294967295U) | 
| #define | yyconst | 
| #define | YY_NULL 0 | 
| #define | YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) | 
| #define | BEGIN (yy_start) = 1 + 2 * | 
| #define | YY_START (((yy_start) - 1) / 2) | 
| #define | YYSTATE YY_START | 
| #define | YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) | 
| #define | YY_NEW_FILE Arabicrestart(Arabicin ) | 
| #define | YY_END_OF_BUFFER_CHAR 0 | 
| #define | YY_BUF_SIZE 16384 | 
| #define | YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) | 
| #define | EOB_ACT_CONTINUE_SCAN 0 | 
| #define | EOB_ACT_END_OF_FILE 1 | 
| #define | EOB_ACT_LAST_MATCH 2 | 
| #define | YY_LESS_LINENO(n) | 
| #define | yyless(n) | 
| #define | unput(c) yyunput( c, (yytext_ptr) ) | 
| #define | YY_BUFFER_NEW 0 | 
| #define | YY_BUFFER_NORMAL 1 | 
| #define | YY_BUFFER_EOF_PENDING 2 | 
| #define | YY_CURRENT_BUFFER | 
| #define | YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | 
| #define | YY_FLUSH_BUFFER Arabic_flush_buffer(YY_CURRENT_BUFFER ) | 
| #define | yy_new_buffer Arabic_create_buffer | 
| #define | yy_set_interactive(is_interactive) | 
| #define | yy_set_bol(at_bol) | 
| #define | YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) | 
| #define | Arabicwrap(n) 1 | 
| #define | YY_SKIP_YYWRAP | 
| #define | yytext_ptr Arabictext | 
| #define | YY_DO_BEFORE_ACTION | 
| #define | YY_NUM_RULES 34 | 
| #define | YY_END_OF_BUFFER 35 | 
| #define | REJECT reject_used_but_not_detected | 
| #define | yymore() yymore_used_but_not_detected | 
| #define | YY_MORE_ADJ 0 | 
| #define | YY_RESTORE_YY_MORE_OFFSET | 
| #define | B_DOC 1 | 
| #define | E_DOC 2 | 
| #define | B_DOCHDR 12 | 
| #define | E_DOCHDR 13 | 
| #define | F_DOCNO 3 | 
| #define | WORD 11 | 
| #define | UPWORD 18 | 
| #define | CONTRACTION 14 | 
| #define | ACRONYM 15 | 
| #define | ACRONYM2 17 | 
| #define | UNKNOWN 16 | 
| #define | B_TEXT 19 | 
| #define | E_TEXT 20 | 
| #define | INITIAL 0 | 
| #define | YY_EXTRA_TYPE void * | 
| #define | YY_READ_BUF_SIZE 8192 | 
| #define | ECHO fwrite( Arabictext, Arabicleng, 1, Arabicout ) | 
| #define | YY_INPUT(buf, result, max_size) | 
| #define | yyterminate() return YY_NULL | 
| #define | YY_START_STACK_INCR 25 | 
| #define | YY_FATAL_ERROR(msg) yy_fatal_error( msg ) | 
| #define | YY_DECL_IS_OURS 1 | 
| #define | YY_DECL int Arabiclex (void) | 
| #define | YY_BREAK break; | 
| #define | YY_RULE_SETUP YY_USER_ACTION | 
| #define | YY_EXIT_FAILURE 2 | 
| #define | yyless(n) | 
| #define | YYTABLES_NAME "yytables" | 
| #define | OUTER 0 | 
| #define | DOC 1 | 
| #define | TEXT 9 | 
| Typedefs | |
| typedef signed char | flex_int8_t | 
| typedef short int | flex_int16_t | 
| typedef int | flex_int32_t | 
| typedef unsigned char | flex_uint8_t | 
| typedef unsigned short int | flex_uint16_t | 
| typedef unsigned int | flex_uint32_t | 
| typedef yy_buffer_state * | YY_BUFFER_STATE | 
| typedef size_t | yy_size_t | 
| typedef unsigned char | YY_CHAR | 
| typedef int | yy_state_type | 
| Functions | |
| void | Arabicrestart (FILE *input_file) | 
| void | Arabic_switch_to_buffer (YY_BUFFER_STATE new_buffer) | 
| YY_BUFFER_STATE | Arabic_create_buffer (FILE *file, int size) | 
| void | Arabic_delete_buffer (YY_BUFFER_STATE b) | 
| void | Arabic_flush_buffer (YY_BUFFER_STATE b) | 
| void | Arabicpush_buffer_state (YY_BUFFER_STATE new_buffer) | 
| void | Arabicpop_buffer_state (void) | 
| void | Arabicensure_buffer_stack (void) | 
| void | Arabic_load_buffer_state (void) | 
| void | Arabic_init_buffer (YY_BUFFER_STATE b, FILE *file) | 
| YY_BUFFER_STATE | Arabic_scan_buffer (char *base, yy_size_t size) | 
| YY_BUFFER_STATE | Arabic_scan_string (yyconst char *yy_str) | 
| YY_BUFFER_STATE | Arabic_scan_bytes (yyconst char *bytes, yy_size_t len) | 
| void * | Arabicalloc (yy_size_t) | 
| void * | Arabicrealloc (void *, yy_size_t) | 
| void | Arabicfree (void *) | 
| yy_state_type | yy_get_previous_state (void) | 
| yy_state_type | yy_try_NUL_trans (yy_state_type current_state) | 
| int | yy_get_next_buffer (void) | 
| void | yy_fatal_error (yyconst char msg[]) | 
| int | yy_init_globals (void) | 
| int | Arabiclex_destroy (void) | 
| int | Arabicget_debug (void) | 
| void | Arabicset_debug (int debug_flag) | 
| YY_EXTRA_TYPE | Arabicget_extra (void) | 
| void | Arabicset_extra (YY_EXTRA_TYPE user_defined) | 
| FILE * | Arabicget_in (void) | 
| void | Arabicset_in (FILE *in_str) | 
| FILE * | Arabicget_out (void) | 
| void | Arabicset_out (FILE *out_str) | 
| yy_size_t | Arabicget_leng (void) | 
| char * | Arabicget_text (void) | 
| int | Arabicget_lineno (void) | 
| void | Arabicset_lineno (int line_number) | 
| void | yyunput (int c, char *buf_ptr) | 
| int | input (void) | 
| int | Arabiclex (void) | 
| Variables | |
| yy_size_t | Arabicleng | 
| FILE * | Arabicin = (FILE *) 0 *Arabicout = (FILE *) 0 | 
| FILE * | Arabicout | 
| size_t | yy_buffer_stack_top = 0 | 
| size_t | yy_buffer_stack_max = 0 | 
| YY_BUFFER_STATE * | yy_buffer_stack = 0 | 
| char | yy_hold_char | 
| yy_size_t | yy_n_chars | 
| char * | yy_c_buf_p = (char *) 0 | 
| int | yy_init = 0 | 
| int | yy_start = 0 | 
| int | yy_did_buffer_switch_on_eof | 
| int | Arabiclineno = 1 | 
| char * | Arabictext | 
| yyconst flex_int16_t | yy_nxt [][256] | 
| yyconst flex_int16_t | yy_accept [138] | 
| yy_state_type | yy_last_accepting_state | 
| char * | yy_last_accepting_cpos | 
| yyconst yy_state_type | yy_NUL_trans [138] | 
| int | Arabic_flex_debug = 0 | 
| long | arabicpos | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Value: ( (yy_buffer_stack) \
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
                          : NULL)
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Value: (yytext_ptr) = yy_bp; \ Arabicleng = (size_t) (yy_cp - yy_bp); \ (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Value: if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ yy_size_t n; \ for ( n = 0; n < max_size && \ (c = getc( Arabicin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ if ( c == '\n' ) \ buf[n++] = (char) c; \ if ( c == EOF && ferror( Arabicin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ else \ { \ errno=0; \ while ( (result = fread(buf, 1, max_size, Arabicin))==0 && ferror(Arabicin)) \ { \ if( errno != EINTR) \ { \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ break; \ } \ errno=0; \ clearerr(Arabicin); \ } \ }\ \ | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Value: { \
        if ( ! YY_CURRENT_BUFFER ){\
        Arabicensure_buffer_stack (); \
                YY_CURRENT_BUFFER_LVALUE =    \
            Arabic_create_buffer(Arabicin,YY_BUF_SIZE ); \
        } \
        YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
        }
 | 
| 
 | 
| Value: { \
        if ( ! YY_CURRENT_BUFFER ){ \
        Arabicensure_buffer_stack (); \
                YY_CURRENT_BUFFER_LVALUE =    \
            Arabic_create_buffer(Arabicin,YY_BUF_SIZE ); \
        } \
        YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
        }
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Value: do \ { \ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ Arabictext[Arabicleng] = (yy_hold_char); \ (yy_c_buf_p) = Arabictext + yyless_macro_arg; \ (yy_hold_char) = *(yy_c_buf_p); \ *(yy_c_buf_p) = '\0'; \ Arabicleng = yyless_macro_arg; \ } \ while ( 0 ) | 
| 
 | 
| Value: do \ { \ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ *yy_cp = (yy_hold_char); \ YY_RESTORE_YY_MORE_OFFSET \ (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ YY_DO_BEFORE_ACTION; \ } \ while ( 0 ) | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | ||||||||||||
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | ||||||||||||
| 
 | 
| 
 | 
| 
 | 
| 
 | ||||||||||||
| 
 | 
| 
 | ||||||||||||
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | ||||||||||||
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | ||||||||||||
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Initial value: 
    {   0,
        0,    0,   35,   31,   33,   32,   24,   24,   24,   26,
       24,   26,   31,    0,    0,    0,    0,   26,    0,    0,
        0,    0,    0,    0,    0,    0,    0,   25,    0,   23,
       22,    0,   29,    0,    0,    0,    0,    0,    0,    0,
       20,    0,    0,    0,    0,    0,    0,    0,    0,    0,
        0,   26,   27,    0,   21,    0,    0,    0,    0,    0,
        0,    0,    0,    0,    0,    0,    6,   14,    0,    0,
        0,   30,   28,    0,    0,    0,    7,   15,    0,    0,
        0,    1,    0,    0,    0,    0,    0,   12,    2,    0,
        0,    0,    0,   13,    0,    0,    8,    0,    0,    4,
        0,    0,    9,    0,    0,    5,    0,   20,    0,    0,
        0,    0,    0,    0,    0,    0,    0,    0,   16,    0,
        0,   17,    0,    0,    0,    0,   18,    0,   19,    0,
       10,   11,    0,    0,    0,    0,    3
    }
 | 
| 
 | 
| Stack as an array. | 
| 
 | 
| capacity of stack. | 
| 
 | 
| index of top of stack. | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
| Initial value: 
    {   0,
        4,    4,    0,   13,    0,    0,    0,    0,    0,   13,
        0,   13,   13,    0,    0,    0,    0,   13,   34,    0,
       40,   40,   40,   40,   40,   40,    0,   13,    0,    0,
        0,    0,    0,   54,   40,   40,   40,   40,   40,   40,
        0,   40,   40,   40,   40,   40,   40,   40,   40,    0,
        0,   13,    0,   54,    0,   40,   40,   40,   40,   40,
       40,   40,   40,   40,   40,   40,    0,    0,   40,   40,
       40,    0,    0,   40,   40,   40,    0,    0,   40,   40,
       40,    0,   40,   40,   40,   40,   40,    0,    0,   40,
       40,   40,   40,    0,   40,   40,    0,   40,   40,    0,
       40,   40,    0,   40,   40,    0,   40,  117,   40,   40,
       40,   40,   40,   40,   40,   40,  117,    0,    0,   40,
       40,    0,   40,   40,    0,   40,    0,   40,    0,    0,
        0,    0,    0,    0,    0,    0,    0
    }
 | 
| 
 | 
| 
 | 
| 
 | 
| 
 | 
 1.3.4
 
1.3.4