Start generating lexer states and transitions

This commit is contained in:
josh committed 2021-06-23 23:15:02 -04:00
1 parent 5881f13380
commit 2122ca02fe
2 files changed
+43 -11

No files matched your search

+14 -11
View File
@@ -39,19 +39,22 @@ module Imbecile
end
def enumerate
id = 0
states = {}
visit = lambda do |state|
unless states.include?(state)
id += 1
states[state] = id
state.transitions.each do |transition|
visit[transition.destination]
@_enumerated ||=
begin
id = 0
states = {}
visit = lambda do |state|
unless states.include?(state)
id += 1
states[state] = id
state.transitions.each do |transition|
visit[transition.destination]
end
end
end
visit[@start_state]
states
end
end
visit[@start_state]
states
end
end