File: data.cc

package info (click to toggle)
bobcat 6.11.00-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 15,292 kB
  • sloc: cpp: 21,370; fortran: 6,507; makefile: 2,787; sh: 724; perl: 401; ansic: 26
file content (48 lines) | stat: -rw-r--r-- 2,277 bytes parent folder | download | duplicates (2)
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
46
47
48
#include "pattern.ih"

//    Note: all state transitions MUST be clustered per state
//          the last element of a state cluster is the default transition.
//          its 0-value will be overwritten by the conversion.
//
//  PerlSetFSA::convert (convert.cc) converts the received regular expression
//  to a regcomp-compilable regex.

PerlSetFSA::TransitionMatrix PerlSetFSA::s_stateTransitions[] =
{
//   d_state            d_input d_next              d_action

    {Start,             '\\',   Bs,                 &PerlSetFSA::nop    },
    {Start,             '[',    Set,                &PerlSetFSA::copy   },
    {Start,             0,      Start,              &PerlSetFSA::copy   },

    {Bs,                'd',    Start,              &PerlSetFSA::d_Set  },
    {Bs,                's',    Start,              &PerlSetFSA::s_Set  },
    {Bs,                'w',    Start,              &PerlSetFSA::w_Set  },
    {Bs,                'D',    Start,              &PerlSetFSA::D_Set  },
    {Bs,                'S',    Start,              &PerlSetFSA::S_Set  },
    {Bs,                'W',    Start,              &PerlSetFSA::W_Set  },
    {Bs,                0,      Start,              &PerlSetFSA::copybs },

    {Set,               '\\',   SetBs,              &PerlSetFSA::nop    },
    {Set,               0,      InsideASet,         &PerlSetFSA::copy   },

    {SetBs,             'd',    InsideASet,         &PerlSetFSA::d_Nest },
    {SetBs,             's',    InsideASet,         &PerlSetFSA::s_Nest },
    {SetBs,             'w',    InsideASet,         &PerlSetFSA::w_Nest },
    {SetBs,             '\\',   InsideASet,         &PerlSetFSA::copy   },
    {SetBs,             0,      InsideASet,         &PerlSetFSA::copybs },

    {InsideASet,        ']',    Start,              &PerlSetFSA::copy   },
    {InsideASet,        '\\',   SetBs,              &PerlSetFSA::nop    },
    {InsideASet,        0,      InsideASet,         &PerlSetFSA::copy   },
};

PerlSetFSA::TransitionMatrix *PerlSetFSA::s_stateTransitions_end =
    PerlSetFSA::s_stateTransitions +
        sizeof(PerlSetFSA::s_stateTransitions)
        /
        sizeof(PerlSetFSA::TransitionMatrix);

vector<PerlSetFSA::StatePair> PerlSetFSA::s_transition;

string Pattern::Regex::s_converted;