<commit_before>#ifndef __PIRPARSER_H
#  define __PIRPARSER_H

#  include "pirlexer.h"
#  include "pirvtable.h"

/* hide internals; definition in pirparser.c */
struct parser_state;

/* define output type: what kind of semantic routines
 * should be called in the parser? 
 */
typedef enum outputtypes {
		OUTPUT_NONE,    /* do nothing  */
		OUTPUT_PIR,     /* output PIR  */
		OUTPUT_PAST     /* output PAST */
		
} outputtype; 




/* parser constructor */
extern struct parser_state *new_parser(char const * filename, outputtype type);

/* entry function for the parser */
extern void TOP(struct parser_state *p);

/* destroy parser and exit */
extern void exit_parser(struct parser_state *p);

/* get number of parse errors */
extern int get_parse_errors(struct parser_state *p);

extern struct lexer_state const *get_lexer(struct parser_state *p);

extern token get_token(struct parser_state *p);



#endif

/*
 * Local variables:
 *   c-file-style: "parrot"
 * End:
 * vim: expandtab shiftwidth=4:
 */<commit_msg>[pirc] Corrected indenting, trailing whitespace and hard tab issues according to coding standards<commit_after>#ifndef __PIRPARSER_H
#  define __PIRPARSER_H

#  include "pirlexer.h"
#  include "pirvtable.h"

/* hide internals; definition in pirparser.c */
struct parser_state;

/* define output type: what kind of semantic routines
 * should be called in the parser?
 */
typedef enum outputtypes {
    OUTPUT_NONE,    /* do nothing  */
    OUTPUT_PIR,     /* output PIR  */
    OUTPUT_PAST     /* output PAST */
} outputtype;

/* parser constructor */
extern struct parser_state *new_parser(char const * filename, outputtype type);

/* entry function for the parser */
extern void TOP(struct parser_state *p);

/* destroy parser and exit */
extern void exit_parser(struct parser_state *p);

/* get number of parse errors */
extern int get_parse_errors(struct parser_state *p);

extern struct lexer_state const *get_lexer(struct parser_state *p);

extern token get_token(struct parser_state *p);

#endif

/*
 * Local variables:
 *   c-file-style: "parrot"
 * End:
 * vim: expandtab shiftwidth=4:
 */
{'fraction_non_alphanumeric': 0.10160680529300567, 'fraction_numerical': 0.000945179584120983, 'mean_word_length': 3.9578454332552693, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2988548', 'n_tokens_mistral': 700, 'n_tokens_neox': 658, 'n_words': 216}