projects
/
sbp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
checkpoint
[sbp.git]
/
src
/
edu
/
berkeley
/
sbp
/
Ambiguous.java
diff --git
a/src/edu/berkeley/sbp/Ambiguous.java
b/src/edu/berkeley/sbp/Ambiguous.java
index
1f7cc38
..
394aab6
100644
(file)
--- a/
src/edu/berkeley/sbp/Ambiguous.java
+++ b/
src/edu/berkeley/sbp/Ambiguous.java
@@
-7,13
+7,19
@@
import java.util.*;
/** if ambiguity checking is enabled, this exception is thrown to signal that the parse was ambiguous */
public class Ambiguous extends Exception {
/** if ambiguity checking is enabled, this exception is thrown to signal that the parse was ambiguous */
public class Ambiguous extends Exception {
- public final Forest<?> ambiguity;
- public Ambiguous(Forest<?> ambiguity) { this.ambiguity = ambiguity; }
+ public final Forest ambiguity;
+ public Ambiguous(Forest ambiguity) {
+ this.ambiguity = ambiguity;
+ }
public String toString() {
// FEATURE: more legible printout desperately needed
StringBuffer sb = new StringBuffer();
sb.append("unresolved ambiguity ");
public String toString() {
// FEATURE: more legible printout desperately needed
StringBuffer sb = new StringBuffer();
sb.append("unresolved ambiguity ");
- for(Tree<?> result : ambiguity.expand(false)) {
+ HashSet<Forest> hf = new HashSet<Forest>();
+ ambiguity.gather(hf);
+ HashSet<Tree> ht = new HashSet<Tree>();
+ ambiguity.expand(ht, hf, new Tree(null, "...", null, false));
+ for(Tree<?> result : ht) {
sb.append("\n\n");
result.toPrettyString(sb);
}
sb.append("\n\n");
result.toPrettyString(sb);
}