caesars 0.5.5 → 0.5.6
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.
- data/CHANGES.txt +5 -0
- data/caesars.gemspec +2 -2
- data/lib/caesars.rb +13 -11
- metadata +2 -2
data/CHANGES.txt
CHANGED
@@ -2,6 +2,11 @@ CAESAR -- CHANGES
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
+
#### 0.5.6 (2009-04-28) ###############################
|
6
|
+
|
7
|
+
* FIXED: Bug in fixed_hash which wasn't forcing the hash man!
|
8
|
+
|
9
|
+
|
5
10
|
#### 0.5.5 (2009-04-27) ###############################
|
6
11
|
|
7
12
|
* CHANGE: Caesars.chill and Caesars.forced_hash can now be used together.
|
data/caesars.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
@spec = Gem::Specification.new do |s|
|
2
2
|
s.name = %q{caesars}
|
3
|
-
s.version = "0.5.
|
4
|
-
s.date = %q{2009-04-
|
3
|
+
s.version = "0.5.6"
|
4
|
+
s.date = %q{2009-04-28}
|
5
5
|
s.specification_version = 1 if s.respond_to? :specification_version=
|
6
6
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
7
7
|
|
data/lib/caesars.rb
CHANGED
@@ -313,34 +313,36 @@ class Caesars
|
|
313
313
|
def self.forced_hash(caesars_meth, &b)
|
314
314
|
module_eval %Q{
|
315
315
|
def #{caesars_meth}(*caesars_names,&b)
|
316
|
-
|
317
|
-
|
316
|
+
this_meth = :'#{caesars_meth}'
|
317
|
+
|
318
|
+
if @caesars_properties.has_key?(this_meth) && caesars_names.empty? && b.nil?
|
319
|
+
return @caesars_properties[this_meth]
|
318
320
|
end
|
319
321
|
|
320
322
|
return nil if caesars_names.empty? && b.nil?
|
321
|
-
return method_missing(
|
323
|
+
return method_missing(this_meth, *caesars_names, &b) if caesars_names.empty?
|
322
324
|
|
323
325
|
caesars_name = caesars_names.shift
|
324
|
-
|
326
|
+
|
325
327
|
prev = @caesars_pointer
|
326
|
-
@caesars_pointer[
|
328
|
+
@caesars_pointer[this_meth] ||= Caesars::Hash.new
|
327
329
|
hash = Caesars::Hash.new
|
328
|
-
if @caesars_pointer[
|
330
|
+
if @caesars_pointer[this_meth].has_key?(caesars_name)
|
329
331
|
STDERR.puts "duplicate key ignored: \#{caesars_name}"
|
330
332
|
return
|
331
333
|
end
|
332
334
|
|
333
335
|
@caesars_pointer = hash # This is needed but I don't know why
|
334
336
|
if b
|
335
|
-
if Caesars.chilled?(
|
336
|
-
@caesars_pointer[
|
337
|
+
if Caesars.chilled?(this_meth)
|
338
|
+
@caesars_pointer[this_meth][caesars_name] = b
|
337
339
|
else
|
338
340
|
b.call
|
339
|
-
@caesars_pointer = prev
|
340
|
-
@caesars_pointer[:'#{caesars_meth}'][caesars_name] = hash
|
341
341
|
end
|
342
|
-
@caesars_pointer = prev
|
343
342
|
end
|
343
|
+
@caesars_pointer = prev
|
344
|
+
@caesars_pointer[this_meth][caesars_name] = hash
|
345
|
+
@caesars_pointer = prev
|
344
346
|
end
|
345
347
|
}
|
346
348
|
nil
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: caesars
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Delano Mandelbaum
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-04-
|
12
|
+
date: 2009-04-28 00:00:00 -04:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|