class Moory::Recogniser
Public Class Methods
new(rules:, initial:, final:)
click to toggle source
# File lib/moory/recogniser.rb, line 5 def initialize(rules:, initial:, final:) @initial = initial @final = final Loader.load(rules: rules, machine: self) end
Public Instance Methods
accepts?(string)
click to toggle source
# File lib/moory/recogniser.rb, line 11 def accepts?(string) reset string.each_char.all? { |c| issue(c) } && accepting? end
Private Instance Methods
accepting?()
click to toggle source
# File lib/moory/recogniser.rb, line 23 def accepting? @final.include?(state) end
reset()
click to toggle source
# File lib/moory/recogniser.rb, line 19 def reset @state = @initial end