regexen_nfae/nfa.py

11 lines
297 B
Python

from collections import namedtuple
NFA = namedtuple('NFA', ['start', 'accept', 'transitions'])
def copy_nfa(nfa):
transitions_copy = {}
for from_state in nfa.transitions:
transitions_copy[from_state] = nfa.transitions[from_state].copy()
return NFA(nfa.start, nfa.accept, transitions_copy)