File: validatorobject.cc

package info (click to toggle)
bobcat 1.11.0-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 3,344 kB
  • ctags: 473
  • sloc: makefile: 12,078; cpp: 5,121; ansic: 63; sh: 14
file content (27 lines) | stat: -rw-r--r-- 799 bytes parent folder | download
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
#include "pattern.ih"

void PerlSetFSA::Validator::operator()(TransitionMatrix const &state)
{
    static char name[] = "Pattern::PerlSetFSA::Validator()";

    d_element++;

    if (state.d_state != d_state)       // new state ?
    {
        if (d_last != 0)
            d_valid = false, 
            cerr << name << ", element #" << d_element << 
                    ": last transition of state " << d_state << " not 0\n";

        d_state = state.d_state;        // set new state;
        d_last = state.d_input;         // set new transition character

        if (d_used[d_state])
            d_valid = false, 
            cerr << name << ", element #" << d_element << 
                    ": Non-contiguous use of state " << d_state << endl;

        d_used[d_state] = true;
    }
}