diff --git a/lib/imbecile.rb b/lib/imbecile.rb index 08dba08..5ada8a3 100644 --- a/lib/imbecile.rb +++ b/lib/imbecile.rb @@ -1,7 +1,7 @@ require_relative "imbecile/cli" require_relative "imbecile/grammar" require_relative "imbecile/regex" -require_relative "imbecile/regex/unit" +require_relative "imbecile/regex/parser" require_relative "imbecile/version" require "erb" diff --git a/lib/imbecile/regex/unit.rb b/lib/imbecile/regex/parser.rb similarity index 97% rename from lib/imbecile/regex/unit.rb rename to lib/imbecile/regex/parser.rb index 9dce5c6..8639f44 100644 --- a/lib/imbecile/regex/unit.rb +++ b/lib/imbecile/regex/parser.rb @@ -1,7 +1,10 @@ module Imbecile class Regex - class Unit + class Parser + + class Unit + end class SequenceUnit < Unit attr_accessor :units @@ -66,11 +69,13 @@ module Imbecile end end + attr_reader :unit + def initialize(pattern) @pattern = pattern.dup @unit = parse_alternates if @pattern != "" - raise "Invalid pattern: #{@pattern}" + raise Error.new(%[Unexpected "#{@pattern}" in pattern]) end end