当前位置: 首页>>代码示例>>Java>>正文


Java ASSyntax.parseVar方法代码示例

本文整理汇总了Java中jason.asSyntax.ASSyntax.parseVar方法的典型用法代码示例。如果您正苦于以下问题:Java ASSyntax.parseVar方法的具体用法?Java ASSyntax.parseVar怎么用?Java ASSyntax.parseVar使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在jason.asSyntax.ASSyntax的用法示例。


在下文中一共展示了ASSyntax.parseVar方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testSimple2

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testSimple2() throws ParseException {
    VarTerm v = new VarTerm("X");
    assertFalse(v.isAtom());
    assertTrue(v.isVar());
    Term t;

    as2jTokenManager tokens = new as2jTokenManager(new SimpleCharStream(new StringReader("Event")));
    Token tk = tokens.getNextToken();
    assertEquals(tk.kind, jason.asSyntax.parser.as2jConstants.VAR);
    
    t = ASSyntax.parseVar("Ea");
    assertFalse(t.isAtom());
    assertTrue(t.isVar());
    
    t = ASSyntax.parseTerm("Event");
    assertFalse(t.isAtom());
    assertTrue(t.isVar());
    
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:20,代码来源:VarTermTest.java

示例2: testVarWithAnnots2

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots2() throws ParseException {
    // test vars annots

    // X[a] = Y[a,b] - ok
    VarTerm v1 = ASSyntax.parseVar("X[a]");
    VarTerm v2 = ASSyntax.parseVar("Y[a,b]");
    Unifier u = new Unifier();
    assertTrue(u.unifies(v1, v2));

    // X[a,b] = Y[a] - not ok
    u = new Unifier();
    assertFalse(u.unifies(v2, v1));

    assertTrue(u.unifies(v1, v2));
    assertTrue(u.unifies(new LiteralImpl("vvv"), v1));
    assertEquals("vvv[a]", v1.capply(u).toString());
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:18,代码来源:VarTermTest.java

示例3: testSimple2

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testSimple2() throws ParseException {
    VarTerm v = new VarTerm("X");
    assertFalse(v.isAtom());
    assertTrue(v.isVar());
    Term t;

    as2jTokenManager tokens = new as2jTokenManager(new SimpleCharStream(new StringReader("Event")));
    Token tk = tokens.getNextToken();
    assertEquals(tk.kind, jason.asSyntax.parser.as2jConstants.VAR);

    t = ASSyntax.parseVar("Ea");
    assertFalse(t.isAtom());
    assertTrue(t.isVar());

    t = ASSyntax.parseTerm("Event");
    assertFalse(t.isAtom());
    assertTrue(t.isVar());

}
 
开发者ID:jason-lang,项目名称:jason,代码行数:20,代码来源:VarTermTest.java

示例4: testVarWithAnnots1

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots1() throws ParseException {
    VarTerm v1 = ASSyntax.parseVar("X[a,b,c]");
    VarTerm v2 = ASSyntax.parseVar("X[a,b]");
    assertTrue(v1.equals(v2));
    v2.addAnnot(new Structure("c"));
    assertTrue(v1.equals(v2));
    assertTrue(v2.equals(v1));

    Unifier u = new Unifier();
    Pred p1 = Pred.parsePred("p(t1,t2)[a,c]");
    // X[a,b,c] = p[a,c] nok
    assertFalse(u.unifies(v1, p1));
    assertEquals("p(t1,t2)[a,c]",p1.toString());

    // p[a,c] = X[a,b,c] ok (X is p)
    assertTrue(u.unifies(p1, v1));
    assertEquals("p(t1,t2)[a,c]",p1.toString());
    assertEquals(u.get("X").toString(), "p(t1,t2)");

    p1.addAnnot(new Structure("b"));
    p1.addAnnot(new Structure("d"));
    u.clear();
    // p[a,c,b,d] = X[a,b,c] nok
    assertFalse(u.unifies(p1, v1));

    u.clear();
    // X[a,b,c] = p[a,c,b,d] ok (X is p)
    assertTrue(u.unifies(v1, p1));
    assertEquals(u.get("X").toString(), "p(t1,t2)");
    assertEquals("p(t1,t2)[a,b,c]",v1.capply(u).toString());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:32,代码来源:VarTermTest.java

示例5: testVarWithAnnots3

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots3() throws ParseException {
    // X[a,b,c,d] = Y[a,c|R] - ok and R=[b,d]
    VarTerm v1 = ASSyntax.parseVar("X[a,b,c,d]");
    VarTerm v2 = ASSyntax.parseVar("Y[a,c|R]");
    Unifier u = new Unifier();
    assertTrue(u.unifies(v1, v2));
    assertEquals("[b,d]",u.get("R").toString());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:9,代码来源:VarTermTest.java

示例6: testVarWithAnnots5

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots5() throws ParseException {
    // X[A|R] = p(1)[a,b,c] - ok and 
    // X = p(1), A = a, R=[b,c]
    VarTerm v = ASSyntax.parseVar("X[A|R]");
    Unifier u = new Unifier();
    assertTrue(u.unifies(v, Literal.parseLiteral("p(1)[a,b,c]")));
    assertEquals("[b,c]", u.get("R").toString());
    assertEquals("a", u.get("A").toString());
    assertEquals("p(1)", u.get(v).toString());
    assertEquals("p(1)[a,b,c]", v.capply(u).toString());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:12,代码来源:VarTermTest.java

示例7: testVarWithAnnots6

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots6() throws ParseException {
    // P -> open[source(a)]
    // P[source(self)]
    // apply on P is open[source(a),source(self)]?
    Unifier u = new Unifier();
    u.unifies(new VarTerm("P"), Literal.parseLiteral("open[source(a)]"));
    VarTerm v1 = ASSyntax.parseVar("P[source(self)]");
    Literal tv1 = (Literal)v1.capply(u);
    assertEquals(2,tv1.getAnnots().size());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:11,代码来源:VarTermTest.java

示例8: testVarWithAnnotsInLogCons

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnotsInLogCons() throws RevisionFailedException, ParseException {
    Agent ag = new Agent();
    ag.initAg();

    ag.addBel(Literal.parseLiteral("b1[b]"));
    ag.addBel(Literal.parseLiteral("b2[d]"));
    
    Unifier u = new Unifier();
    VarTerm v1 = ASSyntax.parseVar("P[d]");
    assertEquals(2, iteratorSize(ag.getBB().getCandidateBeliefs(v1, new Unifier())));
    Iterator<Unifier> i = v1.logicalConsequence(ag, u);
    assertTrue(i.hasNext());
    u = i.next(); // u = {P[d]=b2}
    assertEquals("b2[d]",v1.capply(u).toString());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:16,代码来源:VarTermTest.java

示例9: testVarWithAnnots4

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots4() throws ParseException {
    // X[source(A)] = open[source(a)] - ok and A -> a
    VarTerm v1 = ASSyntax.parseVar("X[source(A)]");
    Unifier u = new Unifier();
    assertTrue(u.unifies(v1, Literal.parseLiteral("open[source(a)]")));
    assertEquals(u.get("A").toString(),"a");
    assertEquals(u.get("X").toString(),"open");

    VarTerm v2 = ASSyntax.parseVar("X[source(self)]");
    u = new Unifier();
    assertFalse(u.unifies(v2, Literal.parseLiteral("open[source(a)]")));
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:13,代码来源:VarTermTest.java

示例10: testVarWithAnnots5

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots5() throws ParseException {
    // X[A|R] = p(1)[a,b,c] - ok and
    // X = p(1), A = a, R=[b,c]
    VarTerm v = ASSyntax.parseVar("X[A|R]");
    Unifier u = new Unifier();
    assertTrue(u.unifies(v, Literal.parseLiteral("p(1)[a,b,c]")));
    assertEquals("[b,c]", u.get("R").toString());
    assertEquals("a", u.get("A").toString());
    assertEquals("p(1)", u.get(v).toString());
    assertEquals("p(1)[a,b,c]", v.capply(u).toString());
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:12,代码来源:VarTermTest.java

示例11: testVarWithAnnotsInLogCons

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnotsInLogCons() throws RevisionFailedException, ParseException {
    Agent ag = new Agent();
    ag.initAg();

    ag.addBel(Literal.parseLiteral("b1[b]"));
    ag.addBel(Literal.parseLiteral("b2[d]"));

    Unifier u = new Unifier();
    VarTerm v1 = ASSyntax.parseVar("P[d]");
    assertEquals(2, iteratorSize(ag.getBB().getCandidateBeliefs(v1, new Unifier())));
    Iterator<Unifier> i = v1.logicalConsequence(ag, u);
    assertTrue(i.hasNext());
    u = i.next(); // u = {P[d]=b2}
    assertEquals("b2[d]",v1.capply(u).toString());
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:16,代码来源:VarTermTest.java


注:本文中的jason.asSyntax.ASSyntax.parseVar方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。