def const_regexp(camel_cased_word)
        parts = camel_cased_word.split("::")

        return Regexp.escape(camel_cased_word) if parts.blank?

        last = parts.pop

        parts.reverse.inject(last) do |acc, part|
          part.empty? ? acc : "#{part}(::#{acc})?"
        end
      end
def const_regexp(camel_cased_word)
        parts = camel_cased_word.split("::")

        return Regexp.escape(camel_cased_word) if parts.blank?

        last = parts.pop

        parts.reverse.inject(last) do |acc, part|
          part.empty? ? acc : "#{part}(::#{acc})?"
        end
      end
Mounts a regular expression, returned as a string to ease interpolation,
 that will match part by part the given constant.

   const_regexp("Foo::Bar::Baz") # => "Foo(::Bar(::Baz)?)?"
   const_regexp("::")            # => "::"