Method: Kleene::DSL#optional
- Defined in:
- lib/kleene/dsl.rb
#optional(machine) ⇒ Object
226 227 228 229 |
# File 'lib/kleene/dsl.rb', line 226 def optional(machine) empty = NFA.new(State.new(true), machine.alphabet).set_regex_pattern("") union(machine, empty).set_regex_pattern("#{machine.regex_pattern}?") end |