src
Public Types | Public Member Functions | Public Attributes | List of all members
re2c::nfa_state_t Struct Reference

#include <nfa.h>

Collaboration diagram for re2c::nfa_state_t:
Collaboration graph
[legend]

Public Types

enum  type_t { ALT, RAN, CTX, FIN }
 

Public Member Functions

void alt (nfa_state_t *s1, nfa_state_t *s2)
 
void ran (nfa_state_t *s, Range *r)
 
void ctx (nfa_state_t *s)
 
void fin (RuleOp *r)
 

Public Attributes

enum re2c::nfa_state_t::type_t type
 
union {
   struct {
      nfa_state_t *   out1
 
      nfa_state_t *   out2
 
   }   alt
 
   struct {
      nfa_state_t *   out
 
      Range *   ran
 
   }   ran
 
   struct {
      nfa_state_t *   out
 
   }   ctx
 
   struct {
      RuleOp *   rule
 
   }   fin
 
value
 
bool mark
 

Detailed Description

Definition at line 15 of file nfa.h.

Member Enumeration Documentation

Enumerator
ALT 
RAN 
CTX 
FIN 

Definition at line 17 of file nfa.h.

18  {
19  ALT,
20  RAN,
21  CTX,
22  FIN
23  } type;
enum re2c::nfa_state_t::type_t type

Member Function Documentation

void re2c::nfa_state_t::alt ( nfa_state_t s1,
nfa_state_t s2 
)
inline

Definition at line 47 of file nfa.h.

48  {
49  type = ALT;
50  value.alt.out1 = s1;
51  value.alt.out2 = s2;
52  mark = false;
53  }
union re2c::nfa_state_t::@6 value
bool mark
Definition: nfa.h:45
enum re2c::nfa_state_t::type_t type
void re2c::nfa_state_t::ctx ( nfa_state_t s)
inline

Definition at line 61 of file nfa.h.

62  {
63  type = CTX;
64  value.ctx.out = s;
65  mark = false;
66  }
union re2c::nfa_state_t::@6 value
bool mark
Definition: nfa.h:45
enum re2c::nfa_state_t::type_t type
void re2c::nfa_state_t::fin ( RuleOp r)
inline

Definition at line 67 of file nfa.h.

68  {
69  type = FIN;
70  value.fin.rule = r;
71  mark = false;
72  }
union re2c::nfa_state_t::@6 value
bool mark
Definition: nfa.h:45
enum re2c::nfa_state_t::type_t type
void re2c::nfa_state_t::ran ( nfa_state_t s,
Range r 
)
inline

Definition at line 54 of file nfa.h.

55  {
56  type = RAN;
57  value.ran.out = s;
58  value.ran.ran = r;
59  mark = false;
60  }
union re2c::nfa_state_t::@6 value
bool mark
Definition: nfa.h:45
enum re2c::nfa_state_t::type_t type

Member Data Documentation

struct { ... } re2c::nfa_state_t::alt
struct { ... } re2c::nfa_state_t::ctx
struct { ... } re2c::nfa_state_t::fin
bool re2c::nfa_state_t::mark

Definition at line 45 of file nfa.h.

nfa_state_t* re2c::nfa_state_t::out

Definition at line 33 of file nfa.h.

nfa_state_t* re2c::nfa_state_t::out1

Definition at line 28 of file nfa.h.

nfa_state_t* re2c::nfa_state_t::out2

Definition at line 29 of file nfa.h.

Range* re2c::nfa_state_t::ran

Definition at line 34 of file nfa.h.

struct { ... } re2c::nfa_state_t::ran
RuleOp* re2c::nfa_state_t::rule

Definition at line 42 of file nfa.h.

enum re2c::nfa_state_t::type_t re2c::nfa_state_t::type
union { ... } re2c::nfa_state_t::value

The documentation for this struct was generated from the following file: