Skip to content

Instantly share code, notes, and snippets.

View 602p's full-sized avatar
🐈
meow

Louis Goessling 602p

🐈
meow
View GitHub Profile
diff --git a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java b/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
index a8b2fa0..fbf2c87 100644
--- a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
+++ b/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
@@ -286,6 +286,17 @@ public abstract class SingleDFAEngine<ROOT,EXCEPT extends Exception> implements
return finalMatches;
}
}
+ else if(!finalMatches.terms.get(disambiguatedTerm))
+ {
diff --git a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java b/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
index a8b2fa0..fbf2c87 100644
--- a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
+++ b/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
@@ -286,6 +286,17 @@ public abstract class SingleDFAEngine<ROOT,EXCEPT extends Exception> implements
return finalMatches;
}
}
+ else if(!finalMatches.terms.get(disambiguatedTerm))
+ {
grammar test ;
terminal Id_t /a*/;
ignore terminal WhiteSpace_t /[\t\r\n\ ]+/ ;
nonterminal Root_c;
synthesized attribute pp :: String occurs on Root_c;
concrete production root_id_c
diff --git a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java b/src/edu.umn.cs.melt.coppe
r.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
index a8b2fa0..5af827d 100644
--- a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
+++ b/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
@@ -263,6 +263,16 @@ public abstract class SingleDFAEngine<ROOT,EXCEPT extends Exception> implements
{
functionalDisambiguationUsed = true;
int disambiguatedTerm = runDisambiguationAction(currentState.pos,finalMatches);
+ if(!finalMatches.terms.get(disambiguatedTerm))
diff --git a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java b/src/edu.umn.cs.melt.coppe
r.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
index a8b2fa0..5af827d 100644
--- a/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
+++ b/src/edu.umn.cs.melt.copper.runtime/src/main/java/edu/umn/cs/melt/copper/runtime/engines/single/SingleDFAEngine.java
@@ -263,6 +263,16 @@ public abstract class SingleDFAEngine<ROOT,EXCEPT extends Exception> implements
{
functionalDisambiguationUsed = true;
int disambiguatedTerm = runDisambiguationAction(currentState.pos,finalMatches);
+ if(!finalMatches.terms.get(disambiguatedTerm))
pluckissuesא$ ./silver-compile
Found test
[/home/louis/School/melt/pluck-issues/silver/generated/src/test/Silver.svi]
Found core
[/home/louis/School/melt/pluck-issues/silver/generated/src/core/Silver.svi]
Found core:monad
[/home/louis/School/melt/pluck-issues/silver/generated/src/core/monad/Silver.svi]
Found core:reflect
pluckissuesא$ cat test/main.sv
grammar test ;
grammar test ;
terminal Id_t /[a-zA-Z][a-zA-Z0-9]*/;
terminal IntLit_t /[0-9]+/;
terminal If_t /if/;
ignore terminal WhiteSpace_t /[\t\r\n\ ]+/ ;
disambiguate Id_t, If_t {
pluck IntLit_t;
}
@602p
602p / score.py
Last active April 29, 2018 23:18
scores=[
150/150,
100/100,
124/124,
125/129,
87/100,
110/110,
73/75
]

Keybase proof

I hereby claim:

  • I am 602p on github.
  • I am 602p (https://keybase.io/602p) on keybase.
  • I have a public key ASBR9rX55_VN4fdskGOq9yhh9ys7l9RKuLxBXMpH91vCQAo

To claim this, I am signing this object:

This file has been truncated, but you can view the full file.
Running transformer pass 'apply_includes'
Running transformer pass 'rewrite_namespaces'
Running transformer pass 'elide_groupings'
Running transformer pass 'fold_constants'
Running transformer pass 'elide_branches'
Running transformer pass 'strip_seps'
Running transformer pass 'predefine_types'
Running transformer pass 'define_types'
FileNode: (N_Statements=28)