curricula 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/curricula/version.rb +1 -1
- data/lib/curricula.rb +13 -0
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f700e9d06de3b9b64c75d964b2fa9a85d04db982
|
4
|
+
data.tar.gz: c612076d8d9be2b6f5c8b7e5a89640a4d446a69b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 435028986507de7c05ea62a188c2c5b3f9283699b5e9109c8f99a0e592119efb058056ce3a6ebe0523109d57f20f44f50068049107a4062bcc2b30d3539ae1ff
|
7
|
+
data.tar.gz: b173b0556770f7beffda62b398ffeee34476f0bc2696fb602a7fe74954d78f039f97915df297c8e4a29e70483037a76cd2b38534ff067351b8017b5200772c35
|
data/lib/curricula/version.rb
CHANGED
data/lib/curricula.rb
CHANGED
@@ -13,6 +13,10 @@ module Curricula
|
|
13
13
|
@hours = hours
|
14
14
|
@prereqs = []
|
15
15
|
end
|
16
|
+
|
17
|
+
def graph_edges
|
18
|
+
prereqs.map{ |prereq| { source: prereq.name, destination: name } }
|
19
|
+
end
|
16
20
|
|
17
21
|
end
|
18
22
|
|
@@ -38,6 +42,15 @@ module Curricula
|
|
38
42
|
@course_hours[name]
|
39
43
|
end
|
40
44
|
|
45
|
+
def graph_nodes
|
46
|
+
@courses.each_value.map &:name
|
47
|
+
end
|
48
|
+
|
49
|
+
def graph_edges
|
50
|
+
process_first!
|
51
|
+
@courses.each_value.map(&:graph_edges).flatten(1).reject &:empty?
|
52
|
+
end
|
53
|
+
|
41
54
|
private
|
42
55
|
|
43
56
|
def process
|