rack-mount 0.2.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -35,7 +35,7 @@ module Rack::Mount
|
|
35
35
|
def url(*args)
|
36
36
|
named_route, params, recall, options = extract_params!(*args)
|
37
37
|
|
38
|
-
options[:parameterize] ||= lambda { |name,
|
38
|
+
options[:parameterize] ||= lambda { |name, param| Utils.escape_uri(param) }
|
39
39
|
|
40
40
|
unless result = generate(:path_info, named_route, params, recall, options)
|
41
41
|
return
|
data/lib/rack/mount/utils.rb
CHANGED
@@ -77,19 +77,13 @@ module Rack::Mount
|
|
77
77
|
}.join("&")
|
78
78
|
when Hash
|
79
79
|
value.map { |k, v|
|
80
|
-
build_nested_query(v, prefix ? "#{prefix}[#{k}]" : k)
|
80
|
+
build_nested_query(v, prefix ? "#{prefix}[#{Rack::Utils.escape(k)}]" : Rack::Utils.escape(k))
|
81
81
|
}.join("&")
|
82
82
|
when String
|
83
83
|
raise ArgumentError, "value must be a Hash" if prefix.nil?
|
84
|
-
"#{
|
85
|
-
when NilClass
|
86
|
-
Rack::Utils.escape(prefix)
|
84
|
+
"#{prefix}=#{Rack::Utils.escape(value)}"
|
87
85
|
else
|
88
|
-
|
89
|
-
build_nested_query(value.to_param.to_s, prefix)
|
90
|
-
else
|
91
|
-
Rack::Utils.escape(prefix)
|
92
|
-
end
|
86
|
+
prefix
|
93
87
|
end
|
94
88
|
end
|
95
89
|
module_function :build_nested_query
|
@@ -291,16 +291,43 @@ class Multimap
|
|
291
291
|
invert[value]
|
292
292
|
end
|
293
293
|
|
294
|
-
|
295
|
-
|
294
|
+
# call-seq:
|
295
|
+
# map.delete_if {| key, value | block } -> map
|
296
|
+
#
|
297
|
+
# Deletes every key-value pair from <i>map</i> for which <i>block</i>
|
298
|
+
# evaluates to <code>true</code>.
|
299
|
+
#
|
300
|
+
# map = Multimap["a" => 100, "b" => [200, 300]]
|
301
|
+
# map.delete_if {|key, value| value >= 300 }
|
302
|
+
# #=> Multimap["a" => 100, "b" => 200]
|
303
|
+
#
|
304
|
+
def delete_if
|
305
|
+
each_association do |key, container|
|
306
|
+
container.delete_if do |value|
|
307
|
+
yield [key, value]
|
308
|
+
end
|
309
|
+
end
|
296
310
|
self
|
297
311
|
end
|
298
312
|
|
299
|
-
|
313
|
+
# call-seq:
|
314
|
+
# map.reject {| key, value | block } -> map
|
315
|
+
#
|
316
|
+
# Same as <code>Multimap#delete_if</code>, but works on (and returns) a
|
317
|
+
# copy of the <i>map</i>. Equivalent to
|
318
|
+
# <code><i>map</i>.dup.delete_if</code>.
|
319
|
+
#
|
320
|
+
def reject(&block)
|
300
321
|
dup.delete_if(&block)
|
301
322
|
end
|
302
323
|
|
303
|
-
|
324
|
+
# call-seq:
|
325
|
+
# map.reject! {| key, value | block } -> map or nil
|
326
|
+
#
|
327
|
+
# Equivalent to <code>Multimap#delete_if</code>, but returns
|
328
|
+
# <code>nil</code> if no changes were made.
|
329
|
+
#
|
330
|
+
def reject!(&block)
|
304
331
|
old_size = size
|
305
332
|
delete_if(&block)
|
306
333
|
old_size == size ? nil : self
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack-mount
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joshua Peek
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-12-02 00:00:00 -06:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|