Objects of the class tt(State) contain one single element of a
link(pattern)(PATTERNS). A tt(State) contains/offers:
    itemization(
    itt(d_type): the type represented by the State (EMPTY, FINAL, CHARSET,
        BOL), the internally used tt(UNDETERMINED__) and tt(EOF__) types, or
        the ascii-value of a single character;
    itt(d_flag): the state-type: tt(NO_LOP) if the RE for this state does not
        use the LOP; tt(ACCEPT) if this state is the first state following the
        LOP (reached via an empty transition from the last state before the
        LOP); tt(PRE) for all states preceding the tt(ACCEPT) state; tt(POST)
        for all states following the tt(ACCEPT) state.
    itt(d_rule): an index into the link(Rules)(RULES) object to the
        link(rule)(RULE) object defining the pattern;
    it() A shared pointer to tt(StateData). The class tt(StateData) is derived
        from link(SemVal)(SEMVAL), and contains two indices: the tt(State)
        indices of the states following the current tt(State). The second
        index (tt(d_next2)) may be 0, indicating that there is no second
        continuation state. A second continuation state occurs when the
        em(alternate) operator (tt('|')) is used in a pattern.
    )

Starting from a pattern's initial state all its subsequent states can
therefore be reached by visiting  the indices stored in
tt(StateData). 

    figure(images/state)(The State class)(STATEFIG)
