equal
deleted
inserted
replaced
12 |
12 |
13 |
13 |
14 object Graph |
14 object Graph |
15 { |
15 { |
16 class Duplicate[Key](val key: Key) extends Exception |
16 class Duplicate[Key](val key: Key) extends Exception |
|
17 { |
|
18 override def toString: String = "Graph.Duplicate(" + key.toString + ")" |
|
19 } |
17 class Undefined[Key](val key: Key) extends Exception |
20 class Undefined[Key](val key: Key) extends Exception |
|
21 { |
|
22 override def toString: String = "Graph.Undefined(" + key.toString + ")" |
|
23 } |
18 class Cycles[Key](val cycles: List[List[Key]]) extends Exception |
24 class Cycles[Key](val cycles: List[List[Key]]) extends Exception |
|
25 { |
|
26 override def toString: String = cycles.mkString("Graph.Cycles(", ",\n", ")") |
|
27 } |
19 |
28 |
20 def empty[Key, A](implicit ord: Ordering[Key]): Graph[Key, A] = |
29 def empty[Key, A](implicit ord: Ordering[Key]): Graph[Key, A] = |
21 new Graph[Key, A](SortedMap.empty(ord)) |
30 new Graph[Key, A](SortedMap.empty(ord)) |
22 |
31 |
23 def make[Key, A](entries: List[((Key, A), List[Key])], |
32 def make[Key, A](entries: List[((Key, A), List[Key])], |