Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source
Show
Ignore:
Timestamp:
03/28/08 20:01:21 (7 months ago)
Author:
david
Message:

Added support for regexp flags like ignoring case in the :requirements part of routes declarations (closes #11421) [NeilW]

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/actionpack/lib/action_controller/routing/builder.rb

    r8652 r9115  
    1515      def interval_regexp 
    1616        Regexp.new "(.*?)(#{separators.source}|$)" 
     17      end 
     18 
     19      def multiline_regexp?(expression) 
     20        expression.options & Regexp::MULTILINE == Regexp::MULTILINE 
    1721      end 
    1822 
     
    99103            if requirement.source =~ %r{\A(\\A|\^)|(\\Z|\\z|\$)\Z} 
    100104              raise ArgumentError, "Regexp anchor characters are not allowed in routing requirements: #{requirement.inspect}" 
     105            end 
     106            if multiline_regexp?(requirement) 
     107              raise ArgumentError, "Regexp multiline option not allowed in routing requirements: #{requirement.inspect}" 
    101108            end 
    102109            segment.regexp = requirement