Class: Flexr::Automaton::NFABuilder
- Inherits:
-
Object
- Object
- Flexr::Automaton::NFABuilder
- Defined in:
- lib/flexr/automaton/nfa.rb
Instance Method Summary collapse
- #build(patterns) ⇒ Object
-
#initialize ⇒ NFABuilder
constructor
A new instance of NFABuilder.
Constructor Details
#initialize ⇒ NFABuilder
Returns a new instance of NFABuilder.
34 35 36 |
# File 'lib/flexr/automaton/nfa.rb', line 34 def initialize @nfa = NFA.new end |
Instance Method Details
#build(patterns) ⇒ Object
38 39 40 41 42 43 44 45 |
# File 'lib/flexr/automaton/nfa.rb', line 38 def build(patterns) patterns.each do |pattern, acceptance| start, finish = fragment(pattern) @nfa.epsilon(@nfa.start, start) @nfa.states[finish].accepts << acceptance end @nfa end |