2e81ca2d30
Updated to Rails 2.2.2. Added a couple more Ruby 1.9 fixes, but that's pretty much at a standstill, until one gets Maruku and HTML5lib working right under Ruby 1.9.
50 lines
733 B
Ruby
50 lines
733 B
Ruby
class Object
|
|
def to_param
|
|
to_s
|
|
end
|
|
end
|
|
|
|
class TrueClass
|
|
def to_param
|
|
self
|
|
end
|
|
end
|
|
|
|
class FalseClass
|
|
def to_param
|
|
self
|
|
end
|
|
end
|
|
|
|
class NilClass
|
|
def to_param
|
|
self
|
|
end
|
|
end
|
|
|
|
class Regexp #:nodoc:
|
|
def number_of_captures
|
|
Regexp.new("|#{source}").match('').captures.length
|
|
end
|
|
|
|
def multiline?
|
|
options & MULTILINE == MULTILINE
|
|
end
|
|
|
|
class << self
|
|
def optionalize(pattern)
|
|
case unoptionalize(pattern)
|
|
when /\A(.|\(.*\))\Z/ then "#{pattern}?"
|
|
else "(?:#{pattern})?"
|
|
end
|
|
end
|
|
|
|
def unoptionalize(pattern)
|
|
[/\A\(\?:(.*)\)\?\Z/, /\A(.|\(.*\))\?\Z/].each do |regexp|
|
|
return $1 if regexp =~ pattern
|
|
end
|
|
return pattern
|
|
end
|
|
end
|
|
end
|