C/Migemo 1.4
rxgen.h
[詳解]
1// vim:set ts=8 sts=4 sw=4 tw=0 et:
2//
3// rxgen.h - regular expression generator
4//
5// Written By: MURAOKA Taro <koron.kaoriya@gmail.com>
6
7#pragma once
8
9#include "charset.h"
10
11typedef struct rxgen rxgen;
12
13// for rxgen_set_operator
14#define RXGEN_OPINDEX_OR 0
15#define RXGEN_OPINDEX_NEST_IN 1
16#define RXGEN_OPINDEX_NEST_OUT 2
17#define RXGEN_OPINDEX_SELECT_IN 3
18#define RXGEN_OPINDEX_SELECT_OUT 4
19#define RXGEN_OPINDEX_NEWLINE 5
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25// Life cycle management
27void rxgen_close(rxgen *rx);
28
29// Regexp pattern generation
30int rxgen_add(rxgen *rx, const unsigned char *word);
31unsigned char *rxgen_generate(rxgen *rx);
32void rxgen_release(rxgen *rx, unsigned char *s);
33void rxgen_reset(rxgen *rx);
34
35// Configuration
38void rxgen_set_escape_chars(rxgen *rx, const unsigned char *chars);
39int rxgen_set_operator(rxgen *rx, int index, const unsigned char *op);
40const unsigned char *rxgen_get_operator(rxgen *rx, int index);
41
42#ifdef __cplusplus
43}
44#endif
#define CHARSET_PROC_CHAR2INT
Definition charset.h:21
#define CHARSET_PROC_INT2CHAR
Definition charset.h:22
int rxgen_set_operator(rxgen *rx, int index, const unsigned char *op)
Definition rxgen.c:582
void rxgen_set_escape_chars(rxgen *rx, const unsigned char *chars)
Definition rxgen.c:139
void rxgen_setproc_int2char(rxgen *rx, CHARSET_PROC_INT2CHAR proc)
Definition rxgen.c:132
void rxgen_setproc_char2int(rxgen *rx, CHARSET_PROC_CHAR2INT proc)
Definition rxgen.c:124
void rxgen_release(rxgen *rx, unsigned char *s)
Definition rxgen.c:536
int rxgen_add(rxgen *rx, const unsigned char *word)
Definition rxgen.c:298
rxgen * rxgen_open()
Definition rxgen.c:161
void rxgen_reset(rxgen *rx)
Definition rxgen.c:543
unsigned char * rxgen_generate(rxgen *rx)
Definition rxgen.c:514
void rxgen_close(rxgen *rx)
Definition rxgen.c:180
const unsigned char * rxgen_get_operator(rxgen *rx, int index)
Definition rxgen.c:575
Definition rxgen.c:67