Do not accept 0-length tokens
This commit is contained in:
parent
7f54778ba8
commit
930ac56148
@ -33,15 +33,18 @@ module Imbecile
|
|||||||
end
|
end
|
||||||
|
|
||||||
def process_nfa_state_set(nfa_state_set)
|
def process_nfa_state_set(nfa_state_set)
|
||||||
state = @states[@nfa_state_sets[nfa_state_set]]
|
state_id = @nfa_state_sets[nfa_state_set]
|
||||||
nfa_state_set.each do |nfa_state|
|
state = @states[state_id]
|
||||||
if nfa_state.accepts
|
if state_id > 0
|
||||||
if state.accepts
|
nfa_state_set.each do |nfa_state|
|
||||||
if nfa_state.accepts.id < state.accepts.id
|
if nfa_state.accepts
|
||||||
|
if state.accepts
|
||||||
|
if nfa_state.accepts.id < state.accepts.id
|
||||||
|
state.accepts = nfa_state.accepts
|
||||||
|
end
|
||||||
|
else
|
||||||
state.accepts = nfa_state.accepts
|
state.accepts = nfa_state.accepts
|
||||||
end
|
end
|
||||||
else
|
|
||||||
state.accepts = nfa_state.accepts
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user