2025-04-27 07:49:33 -04:00

51 lines
1018 B
C

// dfa.h
// Angshuman Guha
// aguha
// Jan 17, 2001
#ifndef __INC_DFA_H_
#define __INC_DFA_H_
#ifdef __cplusplus
extern "C" {
#endif
typedef struct {
short iState;
short jState;
short iAlphabet;
} Transition;
short MakeDFA(PARSETREE *tree, // in
int cPosition, // in
IntSet *aFollowpos, // in
WCHAR *aPos2Wchar, // in
int cAlphabet, // in
WCHAR *aAlphabet, // in
int *pcTransition, // out
Transition **paTransition, // out
unsigned char **ppbFinal); // out
BOOL MinimizeDFA(short *pcState,
unsigned char **ppbFinal,
int *pcTransition,
Transition **ppTransition);
BOOL MakeCanonicalDFA(short cState,
unsigned char *abFinal,
int cTransition,
Transition *aTransition);
void *ConvertDFAtoBlob(int cTransition,
Transition *aTransition,
int cAlphabet,
WCHAR *aAlphabet,
int cState,
unsigned char *abFinal);
#ifdef __cplusplus
}
#endif
#endif