File: validatorobject.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 (26 lines) | stat: -rw-r--r-- 786 bytes parent folder | download | duplicates (3)
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
#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;
    }
}