aboutsummaryrefslogtreecommitdiff
path: root/tests/pending/pos/spec-asseenfrom.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/pending/pos/spec-asseenfrom.scala')
-rw-r--r--tests/pending/pos/spec-asseenfrom.scala29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/pending/pos/spec-asseenfrom.scala b/tests/pending/pos/spec-asseenfrom.scala
new file mode 100644
index 000000000..ede579170
--- /dev/null
+++ b/tests/pending/pos/spec-asseenfrom.scala
@@ -0,0 +1,29 @@
+class Automaton[@specialized(Double) W,State] {
+
+ def finalWeight(s: State): W = sys.error("todo");
+
+ def allStates: Set[State] = sys.error("toodo");
+
+ /**
+ * Returns a map from states to its final weight. may expand all nodes.
+ */
+ def finalStateWeights = Map.empty ++ allStates.map { s => (s,finalWeight(s)) }
+
+ // This works fine:
+ /*
+ def finalStateWeights() = {
+ val it = allStates.iterator;
+ while(it.hasNext) {
+ finalWeight(it.next);
+ }
+ }
+ */
+
+}
+
+abstract class Automaton2[@specialized T1, T2] {
+ def finalWeight(s: T2): T1
+ def allStates: Set[T2]
+
+ def f = allStates map finalWeight
+}