|
From: <jom...@us...> - 2015-12-07 17:16:40
|
Revision: 1860
http://sourceforge.net/p/jason/svn/1860
Author: jomifred
Date: 2015-12-07 17:16:38 +0000 (Mon, 07 Dec 2015)
Log Message:
-----------
add vars with name spaces
Modified Paths:
--------------
trunk/src/jason/asSemantics/Unifier.java
trunk/src/jason/asSyntax/ASSyntax.java
trunk/src/jason/asSyntax/Atom.java
trunk/src/jason/asSyntax/Literal.java
trunk/src/jason/asSyntax/LiteralImpl.java
trunk/src/jason/asSyntax/Pred.java
trunk/src/jason/asSyntax/PredicateIndicator.java
trunk/src/jason/asSyntax/Structure.java
trunk/src/jason/asSyntax/UnnamedVar.java
trunk/src/jason/asSyntax/VarTerm.java
trunk/src/jason/asSyntax/parser/AS2JavaParser.jcc
trunk/src/jason/asSyntax/parser/as2j.java
trunk/src/jason/bb/DefaultBeliefBase.java
trunk/src/test/NSTest.java
Modified: trunk/src/jason/asSemantics/Unifier.java
===================================================================
--- trunk/src/jason/asSemantics/Unifier.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSemantics/Unifier.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -24,6 +24,7 @@
package jason.asSemantics;
import jason.asSyntax.ASSyntax;
+import jason.asSyntax.Atom;
import jason.asSyntax.CyclicTerm;
import jason.asSyntax.ListTerm;
import jason.asSyntax.ListTermImpl;
@@ -235,7 +236,7 @@
// deref vars
final VarTerm t1gv = t1gisvar ? deref((VarTerm)t1g) : null;
final VarTerm t2gv = t2gisvar ? deref((VarTerm)t2g) : null;
-
+
// get their values
//final Term t1vl = t1gisvar ? function.get(t1gv) : t1g;
//final Term t2vl = t2gisvar ? function.get(t2gv) : t2g;
@@ -280,9 +281,9 @@
return false;
// different name space
- if (t1s.getNS() != null && t2s.getNS() != null && !unifiesNoUndo(t1s.getNS(),t2s.getNS()))
+ if (!unifiesNamespace(t1s, t2s))
return false;
-
+
// unify inner terms
// do not use iterator! (see ListTermImpl class)
for (int i = 0; i < ts; i++)
@@ -295,6 +296,17 @@
return true;
}
+
+ private boolean unifiesNamespace(Literal t1s, Literal t2s) {
+ if (t1s != Literal.DefaultNS || t2s != Literal.DefaultNS) { // if both are not default NS
+ Atom nst1 = (t1s == Literal.DefaultNS ? Literal.DefaultNS : t1s.getNS()); //(t1s instanceof Atom ? ((Atom)t1s).getNS() : Literal.DefaultNS));
+ Atom nst2 = (t2s == Literal.DefaultNS ? Literal.DefaultNS : t2s.getNS()); //(t2s instanceof Atom ? ((Atom)t2s).getNS() : Literal.DefaultNS));
+ //System.out.println(nst1.getFunctor()+" == "+ nst2.getFunctor()); //+" ==> "+unifiesNoUndo(nst1, nst2));
+ //return nst1.getFunctor().equals(nst2.getFunctor());
+ return unifiesNoUndo(nst1, nst2);
+ }
+ return true;
+ }
public VarTerm deref(VarTerm v) {
Term vl = function.get(v);
@@ -344,11 +356,23 @@
return false;
}
}
+
+ if (vl.isLiteral()) {
+ Literal lvl = (Literal)vl;
+ //if (!vt.getNS().equals( lvl.getNS()) ) {
+ if (! unifiesNamespace(vt, lvl) ) {
+ //System.out.println("f "+vt+ " /== " + vl); //((Literal)vl).getNS() );
+ return false;
+ }
+ if ( lvl.getNS() != Literal.DefaultNS) {
+ vl = lvl.cloneNS(Literal.DefaultNS);
+ }
+ }
if (!vl.isCyclicTerm() && vl.hasVar(vt, this)) {
vl = new CyclicTerm((Literal)vl, (VarTerm)vt.clone());
}
-
+ //System.out.println("add bind "+vt+" -> "+vl);
function.put((VarTerm) vt.clone(), vl);
return true;
}
Modified: trunk/src/jason/asSyntax/ASSyntax.java
===================================================================
--- trunk/src/jason/asSyntax/ASSyntax.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/ASSyntax.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -181,7 +181,7 @@
public static VarTerm parseVar(String sVar) throws ParseException {
//return new as2j(new StringReader(sVar)).var();
as2j parser = new as2j(new StringReader(sVar));
- VarTerm v = parser.var();
+ VarTerm v = parser.var(Literal.DefaultNS);
if (parser.getNextToken().kind != as2jConstants.EOF)
throw new ParseException("Expected <EOF> after "+v+" for parameter '"+sVar+"'");
return v;
Modified: trunk/src/jason/asSyntax/Atom.java
===================================================================
--- trunk/src/jason/asSyntax/Atom.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/Atom.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -49,7 +49,7 @@
this.ns = DefaultNS;
}
- public Atom(Atom namespace, String functor) {
+ protected Atom(Atom namespace, String functor) {
if (functor == null)
logger.log(Level.WARNING, "The functor of an atom functor should not be null!", new Exception());
this.functor = functor;
@@ -60,13 +60,16 @@
this(l.getNS(), l);
}
- public Atom(Literal l, Unifier u) {
+ public Atom(Literal l, Unifier u) {
this((Atom)l.getNS().capply(u), l);
}
public Atom(Atom namespace, Literal l) {
this.functor = l.getFunctor();
- this.ns = namespace;
+ if (namespace.functor.equals("default")) // in case namespace is an ordinary Atom with functor "default", we need to replace by the Default NS
+ this.ns = DefaultNS;
+ else
+ this.ns = namespace;
predicateIndicatorCache = l.predicateIndicatorCache;
hashCodeCache = l.hashCodeCache;
srcInfo = l.srcInfo;
@@ -83,6 +86,11 @@
public Term clone() {
return this; // since this object is immutable
}
+
+ @Override
+ public Literal cloneNS(Atom newnamespace) {
+ return new Atom(newnamespace, this);
+ }
@Override
public boolean isAtom() {
@@ -144,10 +152,6 @@
@Override
protected int calcHashCode() {
- if (getNS() == null) {
- System.out.println("*** "+this);
- return 0;
- }
return getFunctor().hashCode() + getNS().hashCode();
}
@@ -163,7 +167,7 @@
public Element getAsDOM(Document document) {
Element u = (Element) document.createElement("structure");
u.setAttribute("functor",getFunctor());
- u.setAttribute("name-space", getNS().toString());
+ //u.setAttribute("name-space", getNS().toString());
return u;
}
}
Modified: trunk/src/jason/asSyntax/Literal.java
===================================================================
--- trunk/src/jason/asSyntax/Literal.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/Literal.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -94,6 +94,9 @@
public Literal copy() {
return (Literal)clone(); // should call the clone, that is overridden in subclasses
}
+
+ /** clone in another namespace */
+ public abstract Literal cloneNS(Atom newnamespace);
/** returns the functor of this literal */
public abstract String getFunctor();
@@ -109,7 +112,7 @@
/** returns name space :: functor symbol / arity */
public PredicateIndicator getPredicateIndicator() {
if (predicateIndicatorCache == null) {
- predicateIndicatorCache = new PredicateIndicator(getNS(), getFunctor(), getArity());
+ predicateIndicatorCache = new PredicateIndicator( getFunctor(), getArity());
}
return predicateIndicatorCache;
}
@@ -566,7 +569,7 @@
private static final class DefaultNameSpace extends Atom {
public DefaultNameSpace() {
- super("default");
+ super(null, "default");
}
protected int calcHashCode() {
return getFunctor().hashCode();
Modified: trunk/src/jason/asSyntax/LiteralImpl.java
===================================================================
--- trunk/src/jason/asSyntax/LiteralImpl.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/LiteralImpl.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -146,6 +146,10 @@
return new LiteralImpl(this,u);
}
+ public Literal cloneNS(Atom newNameSpace) {
+ return new LiteralImpl(newNameSpace, !negated(), this);
+ }
+
@Override
protected int calcHashCode() {
int result = super.calcHashCode();
Modified: trunk/src/jason/asSyntax/Pred.java
===================================================================
--- trunk/src/jason/asSyntax/Pred.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/Pred.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -49,9 +49,6 @@
public Pred(String functor) {
super(functor);
}
- public Pred(Atom namespace, String functor) {
- super(namespace, functor);
- }
public Pred(Literal l) {
this(l.getNS(), l);
@@ -602,6 +599,11 @@
return new Pred(this);
}
+ @Override
+ public Literal cloneNS(Atom newnamespace) {
+ return new Pred(newnamespace, this);
+ }
+
public String toStringAsTerm() {
return super.toString();
}
Modified: trunk/src/jason/asSyntax/PredicateIndicator.java
===================================================================
--- trunk/src/jason/asSyntax/PredicateIndicator.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/PredicateIndicator.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -9,8 +9,6 @@
*/
public final class PredicateIndicator implements Comparable<PredicateIndicator>, Serializable {
-
- private final Atom ns; // name space
private final String functor;
private final int arity;
private final int hash;
@@ -18,26 +16,15 @@
public PredicateIndicator(String functor, int arity) {
this.functor = functor;
this.arity = arity;
- this.ns = Literal.DefaultNS;
hash = calcHash();
}
- public PredicateIndicator(Atom namespace, String functor, int arity) {
- this.functor = functor;
- this.arity = arity;
- this.ns = namespace;
- hash = calcHash();
- }
+
public PredicateIndicator(String prefix, PredicateIndicator pi) {
this.functor = prefix + pi.functor;
this.arity = pi.arity;
- this.ns = Literal.DefaultNS;
hash = calcHash();
}
- public Atom getNS() {
- return ns;
- }
-
public String getFunctor() {
return functor;
}
@@ -51,7 +38,7 @@
if (o == this) return true;
if (o != null && o instanceof PredicateIndicator && o.hashCode() == this.hashCode()) {
final PredicateIndicator pi = (PredicateIndicator)o;
- return arity == pi.arity && functor.equals(pi.functor) && ns.equals(pi.getNS());
+ return arity == pi.arity && functor.equals(pi.functor);
}
return false;
}
@@ -63,12 +50,9 @@
@Override
public int compareTo(PredicateIndicator pi) {
- int c = this.ns.compareTo(pi.ns);
+ int c = this.functor.compareTo(pi.functor);
if (c != 0) return c;
- c = this.functor.compareTo(pi.functor);
- if (c != 0) return c;
-
if (pi.arity > this.arity) return -1;
if (this.arity > pi.arity) return 1;
return 0;
@@ -77,14 +61,10 @@
private int calcHash() {
int t = 31 * arity;
if (functor != null) t = 31 * t + functor.hashCode();
- if (ns != Literal.DefaultNS) t = t + 71 * ns.hashCode();
return t;
}
public String toString() {
- if (ns == Literal.DefaultNS)
- return functor + "/" + arity;
- else
- return ns + "::" + functor + "/" + arity;
+ return functor + "/" + arity;
}
}
Modified: trunk/src/jason/asSyntax/Structure.java
===================================================================
--- trunk/src/jason/asSyntax/Structure.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/Structure.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -63,12 +63,6 @@
this.terms = new ArrayList<Term>(5);
}
- public Structure(Atom ns, String functor) {
- //this.functor = (functor == null ? null : functor.intern()); // it does not improve performance in test i did!
- super(ns, functor);
- this.terms = new ArrayList<Term>(5);
- }
-
public Structure(Literal l) {
this(l.getNS(), l);
}
@@ -225,6 +219,11 @@
}
@Override
+ public Literal cloneNS(Atom newnamespace) {
+ return new Structure(newnamespace, this);
+ }
+
+ @Override
public void addTerm(Term t) {
if (t == null) return;
terms.add(t);
Modified: trunk/src/jason/asSyntax/UnnamedVar.java
===================================================================
--- trunk/src/jason/asSyntax/UnnamedVar.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/UnnamedVar.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -38,9 +38,17 @@
public int myId;
public UnnamedVar() {
- this(varCont.incrementAndGet());
+ this(Literal.DefaultNS, varCont.incrementAndGet());
}
+ public UnnamedVar(Atom ns) {
+ this(ns, varCont.incrementAndGet());
+ }
+ public UnnamedVar(Atom ns, int id) {
+ super(ns, "_" + id);
+ myId = id;
+ }
+
public UnnamedVar(int id) {
super("_" + id);
myId = id;
@@ -51,20 +59,26 @@
private UnnamedVar(String name) {
super(name);
}
+ private UnnamedVar(Atom ns, String name) {
+ super(ns, name);
+ }
public static UnnamedVar create(String name) {
+ return create(Literal.DefaultNS, name);
+ }
+ public static UnnamedVar create(Atom ns, String name) {
if (name.length() == 1) { // the case of "_"
- return new UnnamedVar();
+ return new UnnamedVar(ns);
} else {
int id = varCont.incrementAndGet();
- UnnamedVar v = new UnnamedVar("_"+id+name);
+ UnnamedVar v = new UnnamedVar(ns, "_"+id+name);
v.myId = id;
return v;
}
}
public Term clone() {
- UnnamedVar newv = new UnnamedVar(getFunctor());
+ UnnamedVar newv = new UnnamedVar(getNS(), getFunctor());
newv.myId = this.myId;
newv.hashCodeCache = this.hashCodeCache;
if (hasAnnot())
@@ -73,6 +87,16 @@
}
@Override
+ public Literal cloneNS(Atom newNameSpace) {
+ UnnamedVar newv = new UnnamedVar(newNameSpace, getFunctor());
+ newv.myId = this.myId;
+ newv.hashCodeCache = this.hashCodeCache;
+ if (hasAnnot())
+ newv.addAnnots(this.getAnnots().cloneLT());
+ return newv;
+ }
+
+ @Override
public boolean equals(Object t) {
if (t == null) return false;
if (t == this) return true;
Modified: trunk/src/jason/asSyntax/VarTerm.java
===================================================================
--- trunk/src/jason/asSyntax/VarTerm.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/VarTerm.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -66,15 +66,24 @@
e.printStackTrace();
}
}
- public VarTerm(boolean negated, String s) {
- super(negated, s);
+ public VarTerm(boolean negated, String functor) {
+ super(negated, functor);
}
+
+ public VarTerm(Atom namespace, String functor) {
+ super(namespace, LPos, new Atom(functor)); // TODO: provide proper constructor
+ //System.out.println("****"+v+" "+this);
+ }
+ public VarTerm(Atom namespace, Literal v) {
+ super(namespace, !v.negated(), v);
+ }
+
/** @deprecated prefer ASSyntax.parseVar(...) */
public static VarTerm parseVar(String sVar) {
as2j parser = new as2j(new StringReader(sVar));
try {
- return parser.var();
+ return parser.var(Literal.DefaultNS);
} catch (Exception e) {
logger.log(Level.SEVERE, "Error parsing var " + sVar, e);
return null;
@@ -109,6 +118,12 @@
}
vl = vl.capply(u); // should clone here, since there is no cloning in unify
+
+ if (getNS() != Literal.DefaultNS && vl.isLiteral()) {
+ // use var ns for the value ns
+ vl = ((Literal)vl).cloneNS(getNS());
+ }
+
// decide whether to use var annots in apply
// X = p[a]
// !X[b]
@@ -129,14 +144,20 @@
public Term clone() {
// do not call constructor with term parameter!
- VarTerm t = new VarTerm(super.getFunctor());
- t.setNegated(!negated());
- t.srcInfo = this.srcInfo;
- t.hashCodeCache = this.hashCodeCache;
- if (hasAnnot())
- t.setAnnots(getAnnots().cloneLT());
+ //VarTerm t = new VarTerm(super.getFunctor());
+ //t.setNegated(!negated());
+ VarTerm t = new VarTerm(this.getNS(), this);
+ //t.srcInfo = this.srcInfo;
+ //t.hashCodeCache = this.hashCodeCache;
+ //if (hasAnnot())
+ // t.setAnnots(getAnnots().cloneLT());
return t;
}
+
+ @Override
+ public Literal cloneNS(Atom newNameSpace) {
+ return new VarTerm( newNameSpace, this);
+ }
/*
public PlanBody clonePB() {
@@ -253,9 +274,11 @@
*/
// is t also a var? (its value must also be null)
if (t instanceof VarTerm) {
- //final VarTerm tAsVT = (VarTerm) t;
+ final VarTerm tAsVT = (VarTerm) t;
//if (tAsVT.getValue() == null) {
- return negated() == ((VarTerm)t).negated() && getFunctor().equals(((VarTerm)t).getFunctor());
+ return negated() == tAsVT.negated() && getFunctor().equals(tAsVT.getFunctor()); // && getNS().equals(tAsVT.getNS());
+ // DO NOT consider ns in equals of hashcode!
+
//}
}
//}
@@ -541,16 +564,14 @@
@Override
public String toString() {
- //if (value == null) {
- String s = getFunctor();
- if (hasAnnot())
- s += getAnnots();
- if (negated())
- s = "~" + s;
- return s;
- //} else {
- // return value.toString();
- //}
+ String s = getFunctor();
+ if (hasAnnot())
+ s += getAnnots();
+ if (negated())
+ s = "~" + s;
+ if (getNS() != Literal.DefaultNS)
+ s = getNS() + "::" + s;
+ return s;
}
// ----------
Modified: trunk/src/jason/asSyntax/parser/AS2JavaParser.jcc
===================================================================
--- trunk/src/jason/asSyntax/parser/AS2JavaParser.jcc 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/parser/AS2JavaParser.jcc 2015-12-07 17:16:38 UTC (rev 1860)
@@ -591,28 +591,32 @@
/* Literal */
Literal literal() :
- { Pred F = null; Pred V; Token k; boolean type = Literal.LPos; Atom NS = Literal.DefaultNS; Token tns; }
+ { Pred F = null; Pred V; Token k; boolean type = Literal.LPos;
+ Atom NS = Literal.DefaultNS; Token tns = null; }
{
- ( ( [ <TK_NEG> { type = Literal.LNeg; }
- ]
-
+ ( (
+ // namespace
[ LOOKAHEAD(10)
- tns = <ATOM> "::" { if (!tns.image.equals("default"))
+ (tns = <ATOM> { if (!tns.image.equals("default"))
NS = new Atom(tns.image);
- }
+ }
+ |
+ NS = var(NS)
+ )
+ "::"
]
+
+ [ <TK_NEG> { type = Literal.LNeg; }
+ ]
+
(F=pred()
- | V = var()
- [
- "::" F = pred()
- ]
- { VarTerm vt = (VarTerm)V;
+ | V = var(NS) { VarTerm vt = (VarTerm)V;
vt.setNegated(type);
- if (F == null) { // no namespace
+ //if (NS == Literal.DefaultNS) {
return vt;
- } else {
- NS = vt;
- }
+ //} else {
+ // return new VarTerm(NS, vt);
+ //}
}
)
)
@@ -879,10 +883,10 @@
}
-VarTerm var(): { Token K; VarTerm v; ListTerm lt; }
+VarTerm var(Atom ns): { Token K; VarTerm v; ListTerm lt; }
{
- ( K = <VAR> { v = new VarTerm(K.image); v.setSrcInfo(new SourceInfo(asSource, K.beginLine));}
- | K = <UNNAMEDVAR> { v = UnnamedVar.create(K.image); }
+ ( K = <VAR> { v = new VarTerm(ns, K.image); v.setSrcInfo(new SourceInfo(asSource, K.beginLine));}
+ | K = <UNNAMEDVAR> { v = UnnamedVar.create(ns, K.image); }
)
[
lt = list() { v.setAnnots(lt); }
Modified: trunk/src/jason/asSyntax/parser/as2j.java
===================================================================
--- trunk/src/jason/asSyntax/parser/as2j.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/asSyntax/parser/as2j.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -883,7 +883,8 @@
/* Literal */
final public Literal literal() throws ParseException {
- Pred F = null; Pred V; Token k; boolean type = Literal.LPos; Atom NS = Literal.DefaultNS; Token tns;
+ Pred F = null; Pred V; Token k; boolean type = Literal.LPos;
+ Atom NS = Literal.DefaultNS; Token tns = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case VAR:
case TK_NEG:
@@ -891,23 +892,35 @@
case TK_END:
case ATOM:
case UNNAMEDVAR:
+ if (jj_2_4(10)) {
+ switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
+ case ATOM:
+ tns = jj_consume_token(ATOM);
+ if (!tns.image.equals("default"))
+ NS = new Atom(tns.image);
+ break;
+ case VAR:
+ case UNNAMEDVAR:
+ NS = var(NS);
+ break;
+ default:
+ jj_la1[32] = jj_gen;
+ jj_consume_token(-1);
+ throw new ParseException();
+ }
+ jj_consume_token(47);
+ } else {
+ ;
+ }
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TK_NEG:
jj_consume_token(TK_NEG);
type = Literal.LNeg;
break;
default:
- jj_la1[32] = jj_gen;
+ jj_la1[33] = jj_gen;
;
}
- if (jj_2_4(10)) {
- tns = jj_consume_token(ATOM);
- jj_consume_token(47);
- if (!tns.image.equals("default"))
- NS = new Atom(tns.image);
- } else {
- ;
- }
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TK_BEGIN:
case TK_END:
@@ -916,23 +929,15 @@
break;
case VAR:
case UNNAMEDVAR:
- V = var();
- switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case 47:
- jj_consume_token(47);
- F = pred();
- break;
- default:
- jj_la1[33] = jj_gen;
- ;
- }
+ V = var(NS);
VarTerm vt = (VarTerm)V;
vt.setNegated(type);
- if (F == null) { // no namespace
+ //if (NS == Literal.DefaultNS) {
{if (true) return vt;}
- } else {
- NS = vt;
- }
+ //} else {
+ // return new VarTerm(NS, vt);
+ //}
+
break;
default:
jj_la1[34] = jj_gen;
@@ -1555,16 +1560,16 @@
throw new Error("Missing return statement in function");
}
- final public VarTerm var() throws ParseException {
- Token K; VarTerm v; ListTerm lt;
+ final public VarTerm var(Atom ns) throws ParseException {
+ Token K; VarTerm v; ListTerm lt;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case VAR:
K = jj_consume_token(VAR);
- v = new VarTerm(K.image); v.setSrcInfo(new SourceInfo(asSource, K.beginLine));
+ v = new VarTerm(ns, K.image); v.setSrcInfo(new SourceInfo(asSource, K.beginLine));
break;
case UNNAMEDVAR:
K = jj_consume_token(UNNAMEDVAR);
- v = UnnamedVar.create(K.image);
+ v = UnnamedVar.create(ns, K.image);
break;
default:
jj_la1[59] = jj_gen;
@@ -1621,25 +1626,18 @@
finally { jj_save(3, xla); }
}
- final private boolean jj_3R_118() {
- if (jj_3R_107()) return true;
+ final private boolean jj_3R_119() {
+ if (jj_3R_108()) return true;
return false;
}
- final private boolean jj_3R_117() {
+ final private boolean jj_3R_118() {
if (jj_scan_token(41)) return true;
return false;
}
- final private boolean jj_3R_65() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_71()) {
- jj_scanpos = xsp;
- if (jj_3R_72()) return true;
- }
- xsp = jj_scanpos;
- if (jj_3R_73()) jj_scanpos = xsp;
+ final private boolean jj_3R_117() {
+ if (jj_3R_124()) return true;
return false;
}
@@ -1658,42 +1656,43 @@
return false;
}
- final private boolean jj_3R_113() {
- if (jj_3R_120()) return true;
- return false;
- }
-
- final private boolean jj_3R_107() {
+ final private boolean jj_3R_108() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_113()) {
- jj_scanpos = xsp;
if (jj_3R_114()) {
jj_scanpos = xsp;
if (jj_3R_115()) {
jj_scanpos = xsp;
- if (jj_3R_116()) return true;
+ if (jj_3R_116()) {
+ jj_scanpos = xsp;
+ if (jj_3R_117()) return true;
}
}
}
xsp = jj_scanpos;
- if (jj_3R_117()) jj_scanpos = xsp;
+ if (jj_3R_118()) jj_scanpos = xsp;
xsp = jj_scanpos;
- if (jj_3R_118()) jj_scanpos = xsp;
+ if (jj_3R_119()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_100() {
- if (jj_3R_107()) return true;
+ final private boolean jj_3R_101() {
+ if (jj_3R_108()) return true;
return false;
}
- final private boolean jj_3R_57() {
- if (jj_3R_65()) return true;
+ final private boolean jj_3R_61() {
+ if (jj_3R_66()) return true;
return false;
}
- final private boolean jj_3R_45() {
+ final private boolean jj_3R_60() {
+ if (jj_scan_token(TK_NOT)) return true;
+ if (jj_3R_52()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_48() {
if (jj_scan_token(40)) return true;
return false;
}
@@ -1705,33 +1704,37 @@
return false;
}
- final private boolean jj_3R_44() {
- if (jj_scan_token(34)) return true;
+ final private boolean jj_3R_52() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_60()) {
+ jj_scanpos = xsp;
+ if (jj_3R_61()) return true;
+ }
return false;
}
- final private boolean jj_3R_32() {
- if (jj_scan_token(41)) return true;
+ final private boolean jj_3R_47() {
+ if (jj_scan_token(34)) return true;
return false;
}
- final private boolean jj_3R_56() {
- if (jj_scan_token(TK_NOT)) return true;
- if (jj_3R_49()) return true;
+ final private boolean jj_3R_34() {
+ if (jj_scan_token(41)) return true;
return false;
}
- final private boolean jj_3R_31() {
+ final private boolean jj_3R_33() {
if (jj_scan_token(36)) return true;
return false;
}
- final private boolean jj_3R_30() {
+ final private boolean jj_3R_32() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_44()) {
+ if (jj_3R_47()) {
jj_scanpos = xsp;
- if (jj_3R_45()) return true;
+ if (jj_3R_48()) return true;
}
return false;
}
@@ -1745,29 +1748,33 @@
final private boolean jj_3R_18() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_31()) {
+ if (jj_3R_33()) {
jj_scanpos = xsp;
- if (jj_3R_32()) return true;
+ if (jj_3R_34()) return true;
}
return false;
}
- final private boolean jj_3R_49() {
+ final private boolean jj_3R_53() {
+ if (jj_scan_token(52)) return true;
+ if (jj_3R_38()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_38() {
+ if (jj_3R_52()) return true;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_56()) {
- jj_scanpos = xsp;
- if (jj_3R_57()) return true;
- }
+ if (jj_3R_53()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_29() {
+ final private boolean jj_3R_31() {
if (jj_scan_token(39)) return true;
return false;
}
- final private boolean jj_3R_28() {
+ final private boolean jj_3R_30() {
if (jj_scan_token(38)) return true;
return false;
}
@@ -1778,14 +1785,14 @@
return false;
}
- final private boolean jj_3R_27() {
+ final private boolean jj_3R_29() {
if (jj_scan_token(37)) return true;
return false;
}
- final private boolean jj_3R_50() {
- if (jj_scan_token(52)) return true;
- if (jj_3R_36()) return true;
+ final private boolean jj_3R_39() {
+ if (jj_scan_token(50)) return true;
+ if (jj_3R_20()) return true;
return false;
}
@@ -1801,31 +1808,23 @@
return false;
}
- final private boolean jj_3R_36() {
- if (jj_3R_49()) return true;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_50()) jj_scanpos = xsp;
- return false;
- }
-
final private boolean jj_3R_16() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_27()) {
+ if (jj_3R_29()) {
jj_scanpos = xsp;
- if (jj_3R_28()) {
+ if (jj_3R_30()) {
jj_scanpos = xsp;
- if (jj_3R_29()) return true;
+ if (jj_3R_31()) return true;
}
}
xsp = jj_scanpos;
- if (jj_3R_30()) jj_scanpos = xsp;
+ if (jj_3R_32()) jj_scanpos = xsp;
if (jj_3R_19()) return true;
return false;
}
- final private boolean jj_3R_66() {
+ final private boolean jj_3R_67() {
if (jj_scan_token(30)) return true;
Token xsp;
xsp = jj_scanpos;
@@ -1833,325 +1832,330 @@
xsp = jj_scanpos;
if (jj_3_3()) jj_scanpos = xsp;
xsp = jj_scanpos;
- if (jj_3R_100()) jj_scanpos = xsp;
+ if (jj_3R_101()) jj_scanpos = xsp;
if (jj_scan_token(31)) return true;
return false;
}
- final private boolean jj_3R_37() {
- if (jj_scan_token(50)) return true;
- if (jj_3R_20()) return true;
- return false;
- }
-
final private boolean jj_3R_20() {
- if (jj_3R_36()) return true;
+ if (jj_3R_38()) return true;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_37()) jj_scanpos = xsp;
+ if (jj_3R_39()) jj_scanpos = xsp;
return false;
}
+ final private boolean jj_3R_71() {
+ if (jj_3R_67()) return true;
+ return false;
+ }
+
final private boolean jj_3R_70() {
- if (jj_3R_66()) return true;
+ if (jj_3R_78()) return true;
return false;
}
final private boolean jj_3R_69() {
- if (jj_3R_75()) return true;
+ if (jj_3R_77()) return true;
return false;
}
final private boolean jj_3R_68() {
- if (jj_3R_74()) return true;
+ if (jj_3R_42()) return true;
return false;
}
- final private boolean jj_3R_67() {
- if (jj_3R_39()) return true;
- return false;
- }
-
- final private boolean jj_3R_61() {
+ final private boolean jj_3R_65() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_67()) {
- jj_scanpos = xsp;
if (jj_3R_68()) {
jj_scanpos = xsp;
if (jj_3R_69()) {
jj_scanpos = xsp;
- if (jj_3R_70()) return true;
+ if (jj_3R_70()) {
+ jj_scanpos = xsp;
+ if (jj_3R_71()) return true;
}
}
}
return false;
}
- final private boolean jj_3R_96() {
- if (jj_3R_39()) return true;
+ final private boolean jj_3R_94() {
+ if (jj_3R_42()) return true;
return false;
}
- final private boolean jj_3R_95() {
+ final private boolean jj_3R_93() {
if (jj_scan_token(UNNAMEDVAR)) return true;
return false;
}
- final private boolean jj_3R_53() {
- if (jj_scan_token(TK_LABEL_AT)) return true;
+ final private boolean jj_3R_92() {
+ if (jj_scan_token(VAR)) return true;
return false;
}
- final private boolean jj_3R_94() {
- if (jj_scan_token(VAR)) return true;
+ final private boolean jj_3R_78() {
+ if (jj_scan_token(STRING)) return true;
return false;
}
- final private boolean jj_3R_75() {
- if (jj_scan_token(STRING)) return true;
+ final private boolean jj_3R_59() {
+ if (jj_scan_token(TK_LABEL_AT)) return true;
return false;
}
- final private boolean jj_3R_43() {
+ final private boolean jj_3R_46() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_53()) jj_scanpos = xsp;
+ if (jj_3R_59()) jj_scanpos = xsp;
if (jj_3R_16()) return true;
return false;
}
- final private boolean jj_3R_64() {
- if (jj_3R_39()) return true;
+ final private boolean jj_3R_56() {
+ if (jj_3R_42()) return true;
return false;
}
- final private boolean jj_3R_91() {
+ final private boolean jj_3R_76() {
if (jj_scan_token(50)) return true;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_94()) {
+ if (jj_3R_92()) {
jj_scanpos = xsp;
- if (jj_3R_95()) {
+ if (jj_3R_93()) {
jj_scanpos = xsp;
- if (jj_3R_96()) return true;
+ if (jj_3R_94()) return true;
}
}
return false;
}
- final private boolean jj_3R_90() {
+ final private boolean jj_3R_75() {
if (jj_scan_token(48)) return true;
- if (jj_3R_61()) return true;
+ if (jj_3R_65()) return true;
return false;
}
- final private boolean jj_3R_63() {
+ final private boolean jj_3R_55() {
if (jj_scan_token(UNNAMEDVAR)) return true;
return false;
}
- final private boolean jj_3R_62() {
+ final private boolean jj_3R_54() {
if (jj_scan_token(VAR)) return true;
return false;
}
- final private boolean jj_3R_52() {
- if (jj_3R_61()) return true;
+ final private boolean jj_3R_58() {
+ if (jj_3R_65()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
- if (jj_3R_90()) { jj_scanpos = xsp; break; }
+ if (jj_3R_75()) { jj_scanpos = xsp; break; }
}
xsp = jj_scanpos;
- if (jj_3R_91()) jj_scanpos = xsp;
+ if (jj_3R_76()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_54() {
+ final private boolean jj_3R_40() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_62()) {
+ if (jj_3R_54()) {
jj_scanpos = xsp;
- if (jj_3R_63()) return true;
+ if (jj_3R_55()) return true;
}
xsp = jj_scanpos;
- if (jj_3R_64()) jj_scanpos = xsp;
+ if (jj_3R_56()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_39() {
+ final private boolean jj_3R_42() {
if (jj_scan_token(49)) return true;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_52()) jj_scanpos = xsp;
+ if (jj_3R_58()) jj_scanpos = xsp;
if (jj_scan_token(51)) return true;
return false;
}
- final private boolean jj_3R_42() {
- if (jj_scan_token(34)) return true;
+ final private boolean jj_3R_64() {
+ if (jj_3R_20()) return true;
return false;
}
- final private boolean jj_3R_60() {
- if (jj_3R_20()) return true;
+ final private boolean jj_3R_63() {
+ if (jj_3R_67()) return true;
return false;
}
- final private boolean jj_3R_59() {
- if (jj_3R_66()) return true;
+ final private boolean jj_3R_62() {
+ if (jj_3R_42()) return true;
return false;
}
- final private boolean jj_3R_58() {
- if (jj_3R_39()) return true;
+ final private boolean jj_3R_45() {
+ if (jj_scan_token(34)) return true;
return false;
}
- final private boolean jj_3R_51() {
+ final private boolean jj_3R_57() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_58()) {
+ if (jj_3R_62()) {
jj_scanpos = xsp;
- if (jj_3R_59()) {
+ if (jj_3R_63()) {
jj_scanpos = xsp;
- if (jj_3R_60()) return true;
+ if (jj_3R_64()) return true;
}
}
return false;
}
- final private boolean jj_3R_127() {
+ final private boolean jj_3R_120() {
+ if (jj_3R_19()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_128() {
if (jj_3R_20()) return true;
return false;
}
- final private boolean jj_3R_135() {
+ final private boolean jj_3R_136() {
if (jj_scan_token(37)) return true;
return false;
}
- final private boolean jj_3R_126() {
- if (jj_3R_66()) return true;
+ final private boolean jj_3R_127() {
+ if (jj_3R_67()) return true;
return false;
}
- final private boolean jj_3R_119() {
- if (jj_3R_19()) return true;
+ final private boolean jj_3R_79() {
+ if (jj_scan_token(48)) return true;
+ if (jj_3R_57()) return true;
return false;
}
- final private boolean jj_3R_138() {
+ final private boolean jj_3R_139() {
if (jj_scan_token(46)) return true;
return false;
}
- final private boolean jj_3R_137() {
+ final private boolean jj_3R_113() {
+ if (jj_3R_120()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_138() {
if (jj_scan_token(45)) return true;
return false;
}
- final private boolean jj_3R_136() {
+ final private boolean jj_3R_112() {
+ if (jj_scan_token(42)) return true;
+ if (jj_3R_20()) return true;
+ if (jj_scan_token(43)) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_137() {
if (jj_scan_token(37)) return true;
return false;
}
- final private boolean jj_3R_133() {
+ final private boolean jj_3R_134() {
if (jj_scan_token(38)) return true;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_135()) jj_scanpos = xsp;
+ if (jj_3R_136()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_76() {
- if (jj_scan_token(48)) return true;
- if (jj_3R_51()) return true;
+ final private boolean jj_3R_41() {
+ if (jj_3R_57()) return true;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_79()) { jj_scanpos = xsp; break; }
+ }
return false;
}
- final private boolean jj_3R_134() {
+ final private boolean jj_3R_135() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_136()) {
- jj_scanpos = xsp;
if (jj_3R_137()) {
jj_scanpos = xsp;
- if (jj_3R_138()) return true;
+ if (jj_3R_138()) {
+ jj_scanpos = xsp;
+ if (jj_3R_139()) return true;
}
}
return false;
}
- final private boolean jj_3R_112() {
- if (jj_3R_119()) return true;
- return false;
- }
-
final private boolean jj_3R_111() {
- if (jj_scan_token(42)) return true;
- if (jj_3R_20()) return true;
- if (jj_scan_token(43)) return true;
+ if (jj_scan_token(37)) return true;
+ if (jj_3R_102()) return true;
return false;
}
- final private boolean jj_3R_38() {
- if (jj_3R_51()) return true;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_76()) { jj_scanpos = xsp; break; }
- }
- return false;
- }
-
- final private boolean jj_3R_132() {
+ final private boolean jj_3R_133() {
if (jj_scan_token(37)) return true;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_134()) jj_scanpos = xsp;
+ if (jj_3R_135()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_131() {
- if (jj_scan_token(40)) return true;
+ final private boolean jj_3R_24() {
+ if (jj_3R_42()) return true;
return false;
}
- final private boolean jj_3R_110() {
- if (jj_scan_token(37)) return true;
- if (jj_3R_101()) return true;
+ final private boolean jj_3R_132() {
+ if (jj_scan_token(40)) return true;
return false;
}
- final private boolean jj_3R_41() {
+ final private boolean jj_3R_44() {
if (jj_3R_19()) return true;
return false;
}
- final private boolean jj_3R_130() {
+ final private boolean jj_3R_131() {
if (jj_scan_token(44)) return true;
return false;
}
- final private boolean jj_3R_129() {
+ final private boolean jj_3R_110() {
+ if (jj_scan_token(38)) return true;
+ if (jj_3R_102()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_130() {
if (jj_scan_token(34)) return true;
return false;
}
- final private boolean jj_3R_125() {
+ final private boolean jj_3R_126() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_129()) {
- jj_scanpos = xsp;
if (jj_3R_130()) {
jj_scanpos = xsp;
if (jj_3R_131()) {
jj_scanpos = xsp;
if (jj_3R_132()) {
jj_scanpos = xsp;
- if (jj_3R_133()) return true;
+ if (jj_3R_133()) {
+ jj_scanpos = xsp;
+ if (jj_3R_134()) return true;
}
}
}
@@ -2159,53 +2163,42 @@
return false;
}
- final private boolean jj_3R_22() {
- if (jj_3R_39()) return true;
- return false;
- }
-
- final private boolean jj_3R_123() {
+ final private boolean jj_3R_124() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_125()) jj_scanpos = xsp;
+ if (jj_3R_126()) jj_scanpos = xsp;
xsp = jj_scanpos;
- if (jj_3R_126()) {
+ if (jj_3R_127()) {
jj_scanpos = xsp;
- if (jj_3R_127()) return true;
+ if (jj_3R_128()) return true;
}
return false;
}
final private boolean jj_3R_109() {
- if (jj_scan_token(38)) return true;
- if (jj_3R_101()) return true;
- return false;
- }
-
- final private boolean jj_3R_108() {
if (jj_scan_token(NUMBER)) return true;
return false;
}
- final private boolean jj_3R_21() {
+ final private boolean jj_3R_23() {
if (jj_scan_token(42)) return true;
- if (jj_3R_38()) return true;
+ if (jj_3R_41()) return true;
if (jj_scan_token(43)) return true;
return false;
}
- final private boolean jj_3R_101() {
+ final private boolean jj_3R_102() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_108()) {
- jj_scanpos = xsp;
if (jj_3R_109()) {
jj_scanpos = xsp;
if (jj_3R_110()) {
jj_scanpos = xsp;
if (jj_3R_111()) {
jj_scanpos = xsp;
- if (jj_3R_112()) return true;
+ if (jj_3R_112()) {
+ jj_scanpos = xsp;
+ if (jj_3R_113()) return true;
}
}
}
@@ -2224,35 +2217,35 @@
}
}
xsp = jj_scanpos;
- if (jj_3R_21()) jj_scanpos = xsp;
+ if (jj_3R_23()) jj_scanpos = xsp;
xsp = jj_scanpos;
- if (jj_3R_22()) jj_scanpos = xsp;
+ if (jj_3R_24()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_102() {
+ final private boolean jj_3R_103() {
if (jj_scan_token(61)) return true;
- if (jj_3R_93()) return true;
+ if (jj_3R_97()) return true;
return false;
}
- final private boolean jj_3R_122() {
+ final private boolean jj_3R_97() {
+ if (jj_3R_102()) return true;
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_103()) jj_scanpos = xsp;
+ return false;
+ }
+
+ final private boolean jj_3R_123() {
if (jj_scan_token(TK_WHILE)) return true;
if (jj_scan_token(42)) return true;
if (jj_3R_20()) return true;
if (jj_scan_token(43)) return true;
- if (jj_3R_66()) return true;
+ if (jj_3R_67()) return true;
return false;
}
- final private boolean jj_3R_93() {
- if (jj_3R_101()) return true;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_102()) jj_scanpos = xsp;
- return false;
- }
-
final private boolean jj_3_1() {
if (jj_scan_token(TK_BEGIN)) return true;
if (jj_3R_13()) return true;
@@ -2261,148 +2254,154 @@
return false;
}
- final private boolean jj_3R_40() {
+ final private boolean jj_3R_43() {
if (jj_scan_token(30)) return true;
return false;
}
- final private boolean jj_3R_106() {
+ final private boolean jj_3R_107() {
if (jj_scan_token(TK_INTMOD)) return true;
return false;
}
- final private boolean jj_3R_105() {
+ final private boolean jj_3R_106() {
if (jj_scan_token(TK_INTDIV)) return true;
return false;
}
- final private boolean jj_3R_104() {
+ final private boolean jj_3R_105() {
if (jj_scan_token(60)) return true;
return false;
}
- final private boolean jj_3R_35() {
+ final private boolean jj_3R_37() {
if (jj_scan_token(TK_FALSE)) return true;
return false;
}
- final private boolean jj_3R_103() {
+ final private boolean jj_3R_104() {
if (jj_scan_token(59)) return true;
return false;
}
- final private boolean jj_3R_34() {
+ final private boolean jj_3R_36() {
if (jj_scan_token(TK_TRUE)) return true;
return false;
}
- final private boolean jj_3R_97() {
+ final private boolean jj_3R_98() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_103()) {
- jj_scanpos = xsp;
if (jj_3R_104()) {
jj_scanpos = xsp;
if (jj_3R_105()) {
jj_scanpos = xsp;
- if (jj_3R_106()) return true;
+ if (jj_3R_106()) {
+ jj_scanpos = xsp;
+ if (jj_3R_107()) return true;
}
}
}
- if (jj_3R_93()) return true;
+ if (jj_3R_97()) return true;
return false;
}
- final private boolean jj_3R_121() {
- if (jj_scan_token(TK_FOR)) return true;
- if (jj_scan_token(42)) return true;
- if (jj_3R_20()) return true;
- if (jj_scan_token(43)) return true;
- if (jj_3R_66()) return true;
- return false;
- }
-
- final private boolean jj_3R_89() {
- if (jj_3R_93()) return true;
+ final private boolean jj_3R_95() {
+ if (jj_3R_97()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
- if (jj_3R_97()) { jj_scanpos = xsp; break; }
+ if (jj_3R_98()) { jj_scanpos = xsp; break; }
}
return false;
}
- final private boolean jj_3R_55() {
- if (jj_scan_token(47)) return true;
- if (jj_3R_13()) return true;
+ final private boolean jj_3R_51() {
+ if (jj_3R_40()) return true;
return false;
}
- final private boolean jj_3R_48() {
- if (jj_3R_54()) return true;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_55()) jj_scanpos = xsp;
+ final private boolean jj_3R_122() {
+ if (jj_scan_token(TK_FOR)) return true;
+ if (jj_scan_token(42)) return true;
+ if (jj_3R_20()) return true;
+ if (jj_scan_token(43)) return true;
+ if (jj_3R_67()) return true;
return false;
}
- final private boolean jj_3R_47() {
+ final private boolean jj_3R_50() {
if (jj_3R_13()) return true;
return false;
}
- final private boolean jj_3R_99() {
+ final private boolean jj_3R_49() {
+ if (jj_scan_token(TK_NEG)) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_100() {
if (jj_scan_token(38)) return true;
return false;
}
- final private boolean jj_3R_98() {
+ final private boolean jj_3R_99() {
if (jj_scan_token(37)) return true;
return false;
}
- final private boolean jj_3R_92() {
+ final private boolean jj_3R_22() {
+ if (jj_3R_40()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_96() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_98()) {
+ if (jj_3R_99()) {
jj_scanpos = xsp;
- if (jj_3R_99()) return true;
+ if (jj_3R_100()) return true;
}
- if (jj_3R_89()) return true;
+ if (jj_3R_95()) return true;
return false;
}
- final private boolean jj_3_4() {
+ final private boolean jj_3R_21() {
if (jj_scan_token(ATOM)) return true;
- if (jj_scan_token(47)) return true;
return false;
}
- final private boolean jj_3R_46() {
- if (jj_scan_token(TK_NEG)) return true;
+ final private boolean jj_3R_77() {
+ if (jj_3R_95()) return true;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_96()) { jj_scanpos = xsp; break; }
+ }
return false;
}
- final private boolean jj_3R_74() {
- if (jj_3R_89()) return true;
+ final private boolean jj_3_4() {
Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_92()) { jj_scanpos = xsp; break; }
+ xsp = jj_scanpos;
+ if (jj_3R_21()) {
+ jj_scanpos = xsp;
+ if (jj_3R_22()) return true;
}
+ if (jj_scan_token(47)) return true;
return false;
}
- final private boolean jj_3R_33() {
+ final private boolean jj_3R_35() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_46()) jj_scanpos = xsp;
- xsp = jj_scanpos;
if (jj_3_4()) jj_scanpos = xsp;
xsp = jj_scanpos;
- if (jj_3R_47()) {
+ if (jj_3R_49()) jj_scanpos = xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_50()) {
jj_scanpos = xsp;
- if (jj_3R_48()) return true;
+ if (jj_3R_51()) return true;
}
return false;
}
@@ -2410,130 +2409,119 @@
final private boolean jj_3R_19() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_33()) {
+ if (jj_3R_35()) {
jj_scanpos = xsp;
- if (jj_3R_34()) {
+ if (jj_3R_36()) {
jj_scanpos = xsp;
- if (jj_3R_35()) return true;
+ if (jj_3R_37()) return true;
}
}
return false;
}
- final private boolean jj_3R_128() {
- if (jj_scan_token(TK_ELSE)) return true;
+ final private boolean jj_3R_91() {
+ if (jj_3R_67()) return true;
return false;
}
- final private boolean jj_3R_88() {
- if (jj_3R_66()) return true;
+ final private boolean jj_3R_90() {
+ if (jj_3R_42()) return true;
return false;
}
- final private boolean jj_3R_87() {
- if (jj_3R_39()) return true;
+ final private boolean jj_3R_89() {
+ if (jj_3R_78()) return true;
return false;
}
- final private boolean jj_3R_124() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_128()) jj_scanpos = xsp;
- if (jj_3R_66()) return true;
+ final private boolean jj_3R_88() {
+ if (jj_3R_77()) return true;
return false;
}
- final private boolean jj_3R_86() {
- if (jj_3R_75()) return true;
+ final private boolean jj_3R_129() {
+ if (jj_scan_token(TK_ELSE)) return true;
return false;
}
- final private boolean jj_3R_85() {
- if (jj_3R_74()) return true;
+ final private boolean jj_3R_125() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_129()) jj_scanpos = xsp;
+ if (jj_3R_67()) return true;
return false;
}
- final private boolean jj_3R_26() {
- if (jj_3R_43()) return true;
+ final private boolean jj_3R_28() {
+ if (jj_3R_46()) return true;
return false;
}
- final private boolean jj_3R_84() {
+ final private boolean jj_3R_87() {
if (jj_scan_token(58)) return true;
return false;
}
- final private boolean jj_3R_25() {
- if (jj_3R_42()) return true;
+ final private boolean jj_3R_86() {
+ if (jj_scan_token(57)) return true;
return false;
}
- final private boolean jj_3R_120() {
- if (jj_scan_token(TK_IF)) return true;
- if (jj_scan_token(42)) return true;
- if (jj_3R_20()) return true;
- if (jj_scan_token(43)) return true;
- if (jj_3R_66()) return true;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_124()) jj_scanpos = xsp;
+ final private boolean jj_3R_85() {
+ if (jj_scan_token(56)) return true;
return false;
}
- final private boolean jj_3R_83() {
- if (jj_scan_token(57)) return true;
+ final private boolean jj_3R_84() {
+ if (jj_scan_token(55)) return true;
return false;
}
- final private boolean jj_3R_82() {
- if (jj_scan_token(56)) return true;
+ final private boolean jj_3R_83() {
+ if (jj_scan_token(54)) return true;
return false;
}
- final private boolean jj_3R_81() {
- if (jj_scan_token(55)) return true;
+ final private boolean jj_3R_27() {
+ if (jj_3R_45()) return true;
return false;
}
- final private boolean jj_3R_80() {
- if (jj_scan_token(54)) return true;
+ final private boolean jj_3R_121() {
+ if (jj_scan_token(TK_IF)) return true;
+ if (jj_scan_token(42)) return true;
+ if (jj_3R_20()) return true;
+ if (jj_scan_token(43)) return true;
+ if (jj_3R_67()) return true;
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_125()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_79() {
+ final private boolean jj_3R_82() {
if (jj_scan_token(46)) return true;
return false;
}
- final private boolean jj_3R_24() {
- if (jj_3R_41()) return true;
- return false;
- }
-
- final private boolean jj_3R_78() {
+ final private boolean jj_3R_81() {
if (jj_scan_token(53)) return true;
return false;
}
- final private boolean jj_3R_77() {
+ final private boolean jj_3R_80() {
if (jj_scan_token(45)) return true;
return false;
}
- final private boolean jj_3R_23() {
- if (jj_3R_40()) return true;
+ final private boolean jj_3R_26() {
+ if (jj_3R_44()) return true;
return false;
}
- final private boolean jj_3R_73() {
+ final private boolean jj_3R_74() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_77()) {
- jj_scanpos = xsp;
- if (jj_3R_78()) {
- jj_scanpos = xsp;
- if (jj_3R_79()) {
- jj_scanpos = xsp;
if (jj_3R_80()) {
jj_scanpos = xsp;
if (jj_3R_81()) {
@@ -2542,7 +2530,13 @@
jj_scanpos = xsp;
if (jj_3R_83()) {
jj_scanpos = xsp;
- if (jj_3R_84()) return true;
+ if (jj_3R_84()) {
+ jj_scanpos = xsp;
+ if (jj_3R_85()) {
+ jj_scanpos = xsp;
+ if (jj_3R_86()) {
+ jj_scanpos = xsp;
+ if (jj_3R_87()) return true;
}
}
}
@@ -2551,51 +2545,68 @@
}
}
xsp = jj_scanpos;
- if (jj_3R_85()) {
+ if (jj_3R_88()) {
jj_scanpos = xsp;
- if (jj_3R_86()) {
+ if (jj_3R_89()) {
jj_scanpos = xsp;
- if (jj_3R_87()) {
+ if (jj_3R_90()) {
jj_scanpos = xsp;
- if (jj_3R_88()) return true;
+ if (jj_3R_91()) return true;
}
}
}
return false;
}
+ final private boolean jj_3R_25() {
+ if (jj_3R_43()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_73() {
+ if (jj_3R_78()) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_72() {
+ if (jj_3R_77()) return true;
+ return false;
+ }
+
final private boolean jj_3R_14() {
Token xsp;
while (true) {
xsp = jj_scanpos;
- if (jj_3R_23()) { jj_scanpos = xsp; break; }
+ if (jj_3R_25()) { jj_scanpos = xsp; break; }
}
while (true) {
xsp = jj_scanpos;
- if (jj_3R_24()) { jj_scanpos = xsp; break; }
+ if (jj_3R_26()) { jj_scanpos = xsp; break; }
}
while (true) {
xsp = jj_scanpos;
- if (jj_3R_25()) { jj_scanpos = xsp; break; }
+ if (jj_3R_27()) { jj_scanpos = xsp; break; }
}
while (true) {
xsp = jj_scanpos;
- if (jj_3R_26()) { jj_scanpos = xsp; break; }
+ if (jj_3R_28()) { jj_scanpos = xsp; break; }
}
if (jj_scan_token(0)) return true;
return false;
}
- final private boolean jj_3R_72() {
- if (jj_3R_75()) return true;
+ final private boolean jj_3R_66() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_72()) {
+ jj_scanpos = xsp;
+ if (jj_3R_73()) return true;
+ }
+ xsp = jj_scanpos;
+ if (jj_3R_74()) jj_scanpos = xsp;
return false;
}
- final private boolean jj_3R_71() {
- if (jj_3R_74()) return true;
- return false;
- }
-
public as2jTokenManager token_source;
SimpleCharStream jj_input_stream;
public Token token, jj_nt;
@@ -2613,10 +2624,10 @@
jj_la1_1();
}
private static void jj_la1_0() {
- jj_la1_0 = new int[] {0x40000000,0x180cb80,0x40000000,0x0,0x40000000,0x10000,0x180cb80,0x40000000,0x80c000,0x0,0x10000,0x0,0x0,0x0,0x0,0x0,0x41facf80,0x0,0x41facf80,0x40000,0x40040000,0x0,0x0,0x0,0x0,0x0,0x41e0cf80,0x10000,0x0,0x0,0x0,0x41facf80,0x800,0x0,0x180c080,0x180cb80,0x80c000,0x0,0x0,0x0,0x41e0cf80,0x0,0x1000080,0x0,0x41e0cb80,0x41e0cb80,0x0,0x0,0x1e0cf80,0x1e0cb80,0x0,0x41e0cb80,0x0,0x0,0x0,0x3000,0x3000,0x0,0x1a0cb80,0x1000080,0x0,};
+ jj_la1_0 = new int[] {0x40000000,0x180cb80,0x40000000,0x0,0x40000000,0x10000,0x180cb80,0x40000000,0x80c000,0x0,0x10000,0x0,0x0,0x0,0x0,0x0,0x41facf80,0x0,0x41facf80,0x40000,0x40040000,0x0,0x0,0x0,0x0,0x0,0x41e0cf80,0x10000,0x0,0x0,0x0,0x41facf80,0x1800080,0x800,0x180c080,0x180cb80,0x80c000,0x0,0x0,0x0,0x41e0cf80,0x0,0x1000080,0x0,0x41e0cb80,0x41e0cb80,0x0,0x0,0x1e0cf80,0x1e0cb80,0x0,0x41e0cb80,0x0,0x0,0x0,0x3000,0x3000,0x0,0x1a0cb80,0x1000080,0x0,};
}
private static void jj_la1_1() {
- jj_la1_1 = new int[] {0x0,0x0,0x0,0x4,0x0,0xe0,0x0,0x0,0x0,0x1,0x0,0x8,0x10,0xe0,0x104,0x104,0x1564,0x200,0x1564,0x0,0x0,0x6020,0x6020,0x20,0x1164,0x1164,0x460,0x0,0x8,0x210,0x210,0x1564,0x0,0x8000,0x0,0x0,0x0,0x400,0x20000,0x10000,0x20460,0x10000,0x20000,0x40000,0x20460,0x20460,0x40000,0x100000,0x460,0x460,0x7e06000,0x20460,0x7e06000,0x60,0x60,0x18000000,0x18000000,0x20000000,0x460,0x0,0x20000,};
+ jj_la1_1 = new int[] {0x0,0x0,0x0,0x4,0x0,0xe0,0x0,0x0,0x0,0x1,0x0,0x8,0x10,0xe0,0x104,0x104,0x1564,0x200,0x1564,0x0,0x0,0x6020,0x6020,0x20,0x1164,0x1164,0x460,0x0,0x8,0x210,0x210,0x1564,0x0,0x0,0x0,0x0,0x0,0x400,0x20000,0x10000,0x20460,0x10000,0x20000,0x40000,0x20460,0x20460,0x40000,0x100000,0x460,0x460,0x7e06000,0x20460,0x7e06000,0x60,0x60,0x18000000,0x18000000,0x20000000,0x460,0x0,0x20000,};
}
final private JJCalls[] jj_2_rtns = new JJCalls[4];
private boolean jj_rescan = false;
Modified: trunk/src/jason/bb/DefaultBeliefBase.java
===================================================================
--- trunk/src/jason/bb/DefaultBeliefBase.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/jason/bb/DefaultBeliefBase.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -160,7 +160,7 @@
if (l.hasAnnot(TPercept)) {
percepts.add(l);
}
-
+
if (l.getNS() != Literal.DefaultNS)
nameSpaces.add(l.getNS());
@@ -284,11 +284,13 @@
return iterator();
} else {
BelEntry entry = belsMap.get(l.getPredicateIndicator());
- if (entry != null)
+ if (entry != null) {
//return Collections.unmodifiableList(entry.list).iterator();
+ //System.out.println(l+ " ==> " + entry.list);
return entry.list.iterator();
- else
+ } else {
return null;
+ }
}
}
Modified: trunk/src/test/NSTest.java
===================================================================
--- trunk/src/test/NSTest.java 2015-12-03 23:17:22 UTC (rev 1859)
+++ trunk/src/test/NSTest.java 2015-12-07 17:16:38 UTC (rev 1860)
@@ -1,43 +1,11 @@
package test;
-import static jason.asSyntax.ASSyntax.createNumber;
-import static jason.asSyntax.ASSyntax.createStructure;
-import static jason.asSyntax.ASSyntax.parseLiteral;
-import static jason.asSyntax.ASSyntax.parseTerm;
import jason.asSemantics.Unifier;
import jason.asSyntax.ASSyntax;
-import jason.asSyntax.Atom;
-import jason.asSyntax.ListTerm;
-import jason.asSyntax.ListTermImpl;
import jason.asSyntax.Literal;
-import jason.asSyntax.LiteralImpl;
-import jason.asSyntax.NumberTermImpl;
-import jason.asSyntax.ObjectTerm;
-import jason.asSyntax.ObjectTermImpl;
-import jason.asSyntax.Plan;
-import jason.asSyntax.Pred;
-import jason.asSyntax.PredicateIndicator;
-import jason.asSyntax.StringTermImpl;
-import jason.asSyntax.Structure;
import jason.asSyntax.Term;
-import jason.asSyntax.Trigger;
-imp...
[truncated message content] |