Class: MooreMachine

Inherits:
FST show all
Defined in:
lib/finite_automata.rb

Instance Attribute Summary

Attributes inherited from FST

#output_alphabet, #output_function

Attributes inherited from FiniteAutomata

#accepting_states, #alphabet, #start_state, #state_transitions, #states

Instance Method Summary collapse

Methods inherited from FST

#initialize

Methods inherited from FiniteAutomata

#initialize

Constructor Details

This class inherits a constructor from FST

Instance Method Details

#run(word) ⇒ Object



63
64
65
66
67
68
69
70
71
# File 'lib/finite_automata.rb', line 63

def run(word)
	states = [@start_state]
	output = @output_function[@start_state]
	word.each_char do |c|
		states.push(@state_transitions[states.last][c])
		output += @output_function[states.last]
	end		
	return output
end