A regular expression that was generated from a string literal.
A regular expression, ready to be tested against strings, or to take part in an operation against another.
A regular expression that was generated by an operation between others (not parsing a string), so it lacks a literal expression or NFA.
A regular expression, ready to be tested against strings, or to take part in an operation against another. Internally, instances of this type have a DFA (Deterministic Finite Automaton).