ribs 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|