rod 0.6.0 → 0.6.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/README +26 -22
- data/Rakefile +18 -4
- data/changelog.txt +33 -0
- data/lib/rod.rb +2 -1
- data/lib/rod/abstract_database.rb +267 -74
- data/lib/rod/abstract_model.rb +66 -0
- data/lib/rod/cache.rb +81 -0
- data/lib/rod/collection_proxy.rb +43 -14
- data/lib/rod/constants.rb +8 -1
- data/lib/rod/database.rb +15 -7
- data/lib/rod/exception.rb +20 -0
- data/lib/rod/join_element.rb +3 -21
- data/lib/rod/model.rb +219 -57
- data/lib/rod/string_element.rb +3 -27
- data/rod.gemspec +0 -1
- metadata +10 -19
data/lib/rod/string_element.rb
CHANGED
@@ -1,37 +1,13 @@
|
|
1
|
-
|
2
|
-
class StringElement
|
3
|
-
def self.page_offsets
|
4
|
-
@page_offsets ||= []
|
5
|
-
end
|
1
|
+
require 'rod/abstract_model'
|
6
2
|
|
3
|
+
module Rod
|
4
|
+
class StringElement < AbstractModel
|
7
5
|
def self.typedef_struct
|
8
|
-
#"typedef struct {char value;} _string_element;"
|
9
6
|
""
|
10
7
|
end
|
11
8
|
|
12
9
|
def self.struct_name
|
13
|
-
#"_string_element"
|
14
10
|
"char"
|
15
11
|
end
|
16
|
-
|
17
|
-
def self.path_for_data(path)
|
18
|
-
"#{path}#{self.struct_name}.dat"
|
19
|
-
end
|
20
|
-
|
21
|
-
|
22
|
-
def self.layout
|
23
|
-
end
|
24
|
-
|
25
|
-
def self.fields
|
26
|
-
[]
|
27
|
-
end
|
28
|
-
|
29
|
-
def self.build_structure
|
30
|
-
# does nothing, the structure is not needed
|
31
|
-
end
|
32
|
-
|
33
|
-
def self.cache
|
34
|
-
@cache ||= SimpleWeakHash.new
|
35
|
-
end
|
36
12
|
end
|
37
13
|
end
|
data/rod.gemspec
CHANGED
@@ -20,7 +20,6 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.add_dependency("RubyInline", [">= 3.8.3","< 4.0.0"])
|
21
21
|
s.add_dependency("english", [">= 0.5.0","< 0.6.0"])
|
22
22
|
s.add_dependency("activemodel", [">= 3.0.7","< 3.1.0"])
|
23
|
-
s.add_dependency("weak_hash", ["= 1.0.1"])
|
24
23
|
s.add_development_dependency("mocha", [">= 0.9.8","< 1.0.0"])
|
25
24
|
s.add_development_dependency("cucumber", [">= 0.9.4","< 0.10.0"])
|
26
25
|
s.add_development_dependency("rspec", [">= 2.2.0","< 2.3.0"])
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: rod
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.6.
|
5
|
+
version: 0.6.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Aleksander Pohl
|
@@ -12,7 +12,7 @@ autorequire:
|
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
14
|
|
15
|
-
date: 2011-06-
|
15
|
+
date: 2011-06-23 20:57:56 +02:00
|
16
16
|
default_executable:
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
@@ -57,21 +57,10 @@ dependencies:
|
|
57
57
|
version: 3.1.0
|
58
58
|
type: :runtime
|
59
59
|
version_requirements: *id003
|
60
|
-
- !ruby/object:Gem::Dependency
|
61
|
-
name: weak_hash
|
62
|
-
prerelease: false
|
63
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
64
|
-
none: false
|
65
|
-
requirements:
|
66
|
-
- - "="
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: 1.0.1
|
69
|
-
type: :runtime
|
70
|
-
version_requirements: *id004
|
71
60
|
- !ruby/object:Gem::Dependency
|
72
61
|
name: mocha
|
73
62
|
prerelease: false
|
74
|
-
requirement: &
|
63
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
75
64
|
none: false
|
76
65
|
requirements:
|
77
66
|
- - ">="
|
@@ -81,11 +70,11 @@ dependencies:
|
|
81
70
|
- !ruby/object:Gem::Version
|
82
71
|
version: 1.0.0
|
83
72
|
type: :development
|
84
|
-
version_requirements: *
|
73
|
+
version_requirements: *id004
|
85
74
|
- !ruby/object:Gem::Dependency
|
86
75
|
name: cucumber
|
87
76
|
prerelease: false
|
88
|
-
requirement: &
|
77
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
89
78
|
none: false
|
90
79
|
requirements:
|
91
80
|
- - ">="
|
@@ -95,11 +84,11 @@ dependencies:
|
|
95
84
|
- !ruby/object:Gem::Version
|
96
85
|
version: 0.10.0
|
97
86
|
type: :development
|
98
|
-
version_requirements: *
|
87
|
+
version_requirements: *id005
|
99
88
|
- !ruby/object:Gem::Dependency
|
100
89
|
name: rspec
|
101
90
|
prerelease: false
|
102
|
-
requirement: &
|
91
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
103
92
|
none: false
|
104
93
|
requirements:
|
105
94
|
- - ">="
|
@@ -109,7 +98,7 @@ dependencies:
|
|
109
98
|
- !ruby/object:Gem::Version
|
110
99
|
version: 2.3.0
|
111
100
|
type: :development
|
112
|
-
version_requirements: *
|
101
|
+
version_requirements: *id006
|
113
102
|
description: Ruby object database is designed for large amount of data, whose structure rarely changes.
|
114
103
|
email: apohllo@o2.pl
|
115
104
|
executables: []
|
@@ -125,6 +114,7 @@ files:
|
|
125
114
|
- README
|
126
115
|
- changelog.txt
|
127
116
|
- Gemfile
|
117
|
+
- lib/rod/cache.rb
|
128
118
|
- lib/rod/segmented_index.rb
|
129
119
|
- lib/rod/model.rb
|
130
120
|
- lib/rod/database.rb
|
@@ -135,6 +125,7 @@ files:
|
|
135
125
|
- lib/rod/exception.rb
|
136
126
|
- lib/rod/collection_proxy.rb
|
137
127
|
- lib/rod/string_element.rb
|
128
|
+
- lib/rod/abstract_model.rb
|
138
129
|
has_rdoc: true
|
139
130
|
homepage:
|
140
131
|
licenses: []
|