/usr/include/cleri/grammar.h is in libcleri-dev 0.9.4-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | /*
* grammar.h - this should contain the 'start' or your grammar.
*
* author : Jeroen van der Heijden
* email : jeroen@transceptor.technology
* copyright : 2016, Transceptor Technology
*
* changes
* - initial version, 08-03-2016
* - refactoring, 17-06-2017
*/
#ifndef CLERI_GRAMMAR_H_
#define CLERI_GRAMMAR_H_
#include <pcre2.h>
#include <cleri/cleri.h>
#include <cleri/olist.h>
#define CLERI_DEFAULT_RE_KEYWORDS "^\\w+"
/* typedefs */
typedef struct cleri_s cleri_t;
typedef struct cleri_grammar_s cleri_grammar_t;
/* public functions */
#ifdef __cplusplus
extern "C" {
#endif
cleri_grammar_t * cleri_grammar(cleri_t * start, const char * re_keywords);
void cleri_grammar_free(cleri_grammar_t * grammar);
#ifdef __cplusplus
}
#endif
/* structs */
struct cleri_grammar_s
{
cleri_t * start;
pcre2_code * re_keywords;
pcre2_match_data * match_data;
};
#endif /* CLERI_GRAMMAR_H_ */
|