#ifndef PRETTY_PARSER
#define PRETTY_PARSER



#ifdef __cplusplus
class pretty {
    public :
    
    static int init ; 
    
    pretty () {
        ptTokenArray = _tokenArray;
        ptTokenFuncArray = _tokenFuncArray;
        ptTokenNbFuncArray = _tokenNbFuncArray;
        InitConst ();
    }
    
    virtual void * rootGrammar () { return (void *) this;}
    virtual PPTREE bidon ( int error_free) ;
    
    
    static signed char * _tokenArray [1];
    static int (pretty::*(_tokenFuncArray [1])) ();
    static int _tokenNbFuncArray [1];

    signed char **ptTokenArray;
    int (pretty::** ptTokenFuncArray) ();
    int *ptTokenNbFuncArray;

    virtual int SortKeyWord (int ret);
    virtual int UpSortKeyWord (int ret); 
    virtual void InitConst ();
    
    enum constants {
        GOTO_REL =  14 ,
        GOTO =  13 ,
        STR =   12 ,
        UNMARK =    11 ,
        MARK =  10 ,
        TAB_VIRT =  9 ,
        TAB =   8 ,
        NEWLINE =   7 ,
        ATTRIBUTS =     6 ,
        PLACE_HOLD_CONST
    } ; 
} ; 

extern pretty * parser_pretty;

#endif
#define GOTO_REL_pretty     14
#define GOTO_pretty     13
#define STR_pretty  12
#define UNMARK_pretty   11
#define MARK_pretty     10
#define TAB_VIRT_pretty     9
#define TAB_pretty  8
#define NEWLINE_pretty  7
#define ATTRIBUTS_pretty    6
#undef _Tak
#define _Tak(func) func 
#endif
