mongorilla 0.8.0 → 0.8.1

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/ChangeLog CHANGED
@@ -1,3 +1,8 @@
1
+ 0.8.1
2
+ * modify multiple [] access bug
3
+ 0.8.0
4
+ * find result array to cursor
5
+
1
6
  0.6.2
2
7
  * add [] method
3
8
  * add []= method
@@ -6,15 +6,19 @@ module Mongorilla
6
6
  if idx < 0
7
7
  idx = @cursor.count + idx
8
8
  return nil if idx < 0
9
+ else
10
+ return nil if idx >= @cursor.count
9
11
  end
10
- return @members[idx] if @members[idx]
12
+ return @members[idx] if @members[idx]
11
13
  ret = @cursor.skip(idx).limit(1).first
14
+ @cursor = @col.find(@cond,@opt)
12
15
  @members[idx] = ret ? @klass.new(ret) : nil
13
16
  end
14
17
 
15
18
  def each
16
- @cursor.each do|v|
17
- yield @klass.new(v)
19
+ @cursor.each_with_index do|v,i|
20
+ @members[i] = @klass.new(v) unless @members[i]
21
+ yield @members[i]
18
22
  end
19
23
  end
20
24
 
@@ -22,10 +26,13 @@ module Mongorilla
22
26
  @cursor.count
23
27
  end
24
28
 
25
- def initialize(klass,cursor)
29
+ def initialize(klass,cursor,col,cond,opt)
26
30
  @members = {}
27
31
  @klass = klass
28
32
  @cursor = cursor
33
+ @col = col
34
+ @cond = cond
35
+ @opt = opt
29
36
  end
30
37
  end
31
38
  end
@@ -281,7 +281,7 @@ module Mongorilla
281
281
  find_one(cond,opt)
282
282
  else
283
283
  ret = @col.find(cond,opt)
284
- Cursor.new(self,ret)
284
+ Cursor.new(self,ret,@col,cond,opt)
285
285
  end
286
286
  end
287
287
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongorilla
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-31 00:00:00.000000000 Z
12
+ date: 2012-01-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mongo
16
- requirement: &7220940 !ruby/object:Gem::Requirement
16
+ requirement: &10125820 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *7220940
24
+ version_requirements: *10125820
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &7218560 !ruby/object:Gem::Requirement
27
+ requirement: &10122240 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 2.3.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *7218560
35
+ version_requirements: *10122240
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &7296680 !ruby/object:Gem::Requirement
38
+ requirement: &10118880 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.0.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *7296680
46
+ version_requirements: *10118880
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &7293500 !ruby/object:Gem::Requirement
49
+ requirement: &10471640 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.6.4
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *7293500
57
+ version_requirements: *10471640
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rcov
60
- requirement: &7385580 !ruby/object:Gem::Requirement
60
+ requirement: &10469640 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *7385580
68
+ version_requirements: *10469640
69
69
  description: Small Object Document Mapper for Mongo. you can update atomic with condition
70
70
  email: laten@nifty.com
71
71
  executables: []
@@ -97,7 +97,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
97
97
  version: '0'
98
98
  segments:
99
99
  - 0
100
- hash: 1829226667698527621
100
+ hash: 4540637170419107407
101
101
  required_rubygems_version: !ruby/object:Gem::Requirement
102
102
  none: false
103
103
  requirements: