ribs 0.0.1 → 0.0.2
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 +54 -24
- data/Rakefile +1 -1
- data/lib/ribs.jar +0 -0
- data/lib/ribs.rb +32 -11
- data/lib/ribs/db.rb +10 -10
- data/lib/ribs/definition.rb +115 -151
- data/lib/ribs/{session.rb → handle.rb} +30 -24
- data/lib/ribs/repository.rb +243 -0
- data/lib/ribs/rib.rb +100 -0
- data/test/artist_spec.rb +22 -20
- data/test/define_accessors_spec.rb +27 -0
- data/test/define_model_spec.rb +41 -0
- data/test/identity_map_spec.rb +63 -0
- data/test/repository_spec.rb +79 -0
- data/test/rib_spec.rb +73 -0
- data/test/simple_select_spec.rb +22 -22
- data/test/test_helper.rb +89 -8
- data/test/track_spec.rb +90 -78
- metadata +10 -4
- data/lib/ribs/meat.rb +0 -33
metadata
CHANGED
@@ -32,8 +32,9 @@ files:
|
|
32
32
|
- lib/ribs.rb
|
33
33
|
- lib/ribs/db.rb
|
34
34
|
- lib/ribs/definition.rb
|
35
|
-
- lib/ribs/
|
36
|
-
- lib/ribs/
|
35
|
+
- lib/ribs/handle.rb
|
36
|
+
- lib/ribs/repository.rb
|
37
|
+
- lib/ribs/rib.rb
|
37
38
|
- lib/ribs/core_ext/time.rb
|
38
39
|
- lib/antlr-2.7.6.jar
|
39
40
|
- lib/commons-collections-3.1.jar
|
@@ -46,7 +47,12 @@ files:
|
|
46
47
|
- lib/slf4j-api-1.5.2.jar
|
47
48
|
- lib/slf4j-jdk14-1.5.2.jar
|
48
49
|
- test/artist_spec.rb
|
50
|
+
- test/define_accessors_spec.rb
|
51
|
+
- test/define_model_spec.rb
|
49
52
|
- test/find_spec.rb
|
53
|
+
- test/identity_map_spec.rb
|
54
|
+
- test/repository_spec.rb
|
55
|
+
- test/rib_spec.rb
|
50
56
|
- test/simple_select_spec.rb
|
51
57
|
- test/test_helper.rb
|
52
58
|
- test/track_spec.rb
|
@@ -66,12 +72,12 @@ requirements: []
|
|
66
72
|
|
67
73
|
authors:
|
68
74
|
- Ola Bini
|
69
|
-
date: 2008-
|
75
|
+
date: 2008-09-16 22:00:00 +00:00
|
70
76
|
platform: ruby
|
71
77
|
test_files: []
|
72
78
|
|
73
79
|
version: !ruby/object:Gem::Version
|
74
|
-
version: 0.0.
|
80
|
+
version: 0.0.2
|
75
81
|
require_paths:
|
76
82
|
- lib
|
77
83
|
dependencies: []
|
data/lib/ribs/meat.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
module Ribs
|
2
|
-
# The Meat is what actually includes data. This is the holder object
|
3
|
-
# for all data that comes from a database. This allows Ribs to avoid
|
4
|
-
# polluting model objects with loads of instance variables. Instead
|
5
|
-
# everything is kept in one instance of Meat. The Meat also keeps
|
6
|
-
# track of whether the object is persistent or if it's been
|
7
|
-
# destroyed. Note that Meat is very implementation dependent, and
|
8
|
-
# should not be relied upon.
|
9
|
-
class Meat
|
10
|
-
# All the data for this instance
|
11
|
-
attr_reader :properties
|
12
|
-
# Is this instance persistent yet, or not?
|
13
|
-
attr_accessor :persistent
|
14
|
-
# Has this instance been destroyed?
|
15
|
-
attr_accessor :destroyed
|
16
|
-
|
17
|
-
# +inside+ is the instance this Meat belongs to.
|
18
|
-
def initialize(inside)
|
19
|
-
@inside = inside
|
20
|
-
@properties = {}
|
21
|
-
end
|
22
|
-
|
23
|
-
# Gets the current value of a property
|
24
|
-
def [](ix)
|
25
|
-
@properties[ix]
|
26
|
-
end
|
27
|
-
|
28
|
-
# Sets the current value of a property
|
29
|
-
def []=(ix, value)
|
30
|
-
@properties[ix] = value
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|