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


Java ASSyntax.parseLiteral方法代码示例

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


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

示例1: testCompare

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testCompare() throws ParseException {
    Literal p1 = ASSyntax.parseLiteral("ns1::a");
    Literal p2 = ASSyntax.parseLiteral("ns2::b");
    Literal p3 = ASSyntax.parseLiteral("ns2::a");
    
    //assertNotSame(p1.getPredicateIndicator().hashCode(), p2.getPredicateIndicator().hashCode() );
    //assertNotSame(p1.getPredicateIndicator().hashCode(), p3.getPredicateIndicator().hashCode() );
    assertNotSame(p1.hashCode(), p3.hashCode() );
    
    assertEquals(p1.compareTo(p2), -1);
    assertEquals(p1.compareTo(null), -1);
    assertEquals(p2.compareTo(p1), 1);
    assertEquals(p1.compareTo(p1), 0);

    p1 = ASSyntax.parseLiteral("ns1::a");
    p2 = ASSyntax.parseLiteral("ns1::b");
    
    assertEquals(p1.compareTo(p2), -1);
    assertEquals(p1.compareTo(null), -1);
    assertEquals(p2.compareTo(p1), 1);
    assertEquals(p1.compareTo(p1), 0);
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:23,代码来源:NSTest.java

示例2: admCommand

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
/**
 * Commands that the owner of the scheme can perform.
 *
 * @param cmd, possible values (as strings):
 *     commitMission(<agent>,<mission>),
 *     goalDone(<agent>,<goal>) -- for performance goals --,
 *     goalSatisfied(<goal>) -- for achievement goals --
 *     setCardinality(<element type>,<element id>,<new min>,<new max>)
 *              [element type=mission]
 *
 * @throws CartagoException
 * @throws jason.asSyntax.parser.ParseException
 * @throws MoiseException
 * @throws NoValueException
 */
@OPERATION @LINK public void admCommand(String cmd) throws CartagoException, jason.asSyntax.parser.ParseException, NoValueException, MoiseException, ParseException {
    if (!running) return;
    // this operation is available only for the owner of the artifact
    if ((!getOpUserName().equals(ownerAgent)) && !getOpUserName().equals("workspace-manager")) {
        failed("Error: agent '"+getOpUserName()+"' is not allowed to run "+cmd,"reason",new JasonTermWrapper("not_allowed_to_start(admCommand)"));
    } else {
        Literal lCmd = ASSyntax.parseLiteral(cmd);
        if (lCmd.getFunctor().equals("goalDone")) {
            goalDone(fixAgName(lCmd.getTerm(0).toString()), lCmd.getTerm(1).toString());
        } else if (lCmd.getFunctor().equals("commitMission")) {
            commitMission(fixAgName(lCmd.getTerm(0).toString()), lCmd.getTerm(1).toString());
        } else if (lCmd.getFunctor().equals("goalSatisfied")) {
            enableSatisfied(lCmd.getTerm(0).toString());
        } else if (lCmd.getFunctor().equals("setCardinality")) {
            setCardinality(lCmd.getTerm(0).toString(), lCmd.getTerm(1).toString(), (int)((NumberTerm)lCmd.getTerm(2)).solve(), (int)((NumberTerm)lCmd.getTerm(3)).solve());
        }
    }
}
 
开发者ID:moise-lang,项目名称:moise,代码行数:34,代码来源:SchemeBoard.java

示例3: admCommand

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
/**
 * Commands that the owner of the group can perform.
 *
 * @param cmd, possible values (as strings):
 *     adoptRole(<agent>,<role>)
 *     setCardinality(<element type>,<element id>,<new min>,<new max>)
 *              [element type= role/subgroup]
 *
 * @throws CartagoException
 * @throws jason.asSyntax.parser.ParseException
 * @throws NoValueException
 * @throws MoiseException
 */
@OPERATION @LINK public void admCommand(String cmd) throws CartagoException, jason.asSyntax.parser.ParseException, NoValueException, MoiseException, ParseException {
    // this operation is available only for the owner of the artifact
    if (getCurrentOpAgentId() != null && (!getOpUserName().equals(ownerAgent)) && !getOpUserName().equals("workspace-manager")) {
        failed("Error: agent '"+getOpUserName()+"' is not allowed to run "+cmd,"reason",new JasonTermWrapper("not_allowed_to_start(admCommand)"));
    } else {
        Literal lCmd = ASSyntax.parseLiteral(cmd);
        if (lCmd.getFunctor().equals("adoptRole")) {
            adoptRole(fixAgName(lCmd.getTerm(0).toString()), lCmd.getTerm(1).toString());
        } else if (lCmd.getFunctor().equals("leaveRole")) {
            System.out.println("adm leave role not implemented yet! come back soon");
        } else if (lCmd.getFunctor().equals("setCardinality")) {
            setCardinality(lCmd.getTerm(0).toString(), lCmd.getTerm(1).toString(), (int)((NumberTerm)lCmd.getTerm(2)).solve(), (int)((NumberTerm)lCmd.getTerm(3)).solve());
        }
    }
}
 
开发者ID:moise-lang,项目名称:moise,代码行数:29,代码来源:GroupBoard.java

示例4: testGroupToProlog

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
@Test
public void testGroupToProlog() {
    //Group g = oe.getOS().getSS().getRootGrSpec().findSubGroup("attack");
    // the order changes always, improve this test
    //assertEquals("group_specification(attack,[role(middle,5,5,[leader],[link(communication,player,inter_group),link(communication,coach,inter_group)]),role(leader,0,1,[middle],[link(communication,player,inter_group),link(authority,player,inter_group),link(communication,coach,inter_group)]),role(attacker,2,2,[],[link(communication,player,inter_group),link(communication,coach,inter_group)])],[],properties([]))", g.getAsProlog());

    //g = oe.getOS().getSS().getRootGrSpec();
    // the order changes always, improve this test
    //assertEquals("group_specification(team,[role(coach,1,2,[],[link(authority,player,inter_group)])],[attack(1,1),defense(1,1)],properties([]))", g.getAsProlog());
    OS os = OS.loadOSFromURI("examples/auction/auction-os.xml");
    System.out.println(os.getAsProlog());
    
    Literal ospl = null;
    try {
        ospl = ASSyntax.parseLiteral(os.getAsProlog());
    } catch (ParseException e) {
        e.printStackTrace();
    }
    assertNotNull(ospl);
}
 
开发者ID:moise-lang,项目名称:moise,代码行数:21,代码来源:ToPrologTest.java

示例5: testRelExpType

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testRelExpType() throws ParseException {
    assertTrue(ASSyntax.parseFormula("N>1").isLiteral()); // they need to be literal for unification test
    assertTrue(ASSyntax.parseFormula("a & b").isLiteral());

    Literal l = ASSyntax.parseLiteral("b(_, (B & not X))");
    Unifier u = new Unifier();
    l.makeVarsAnnon(u);
    assertTrue(u.size() >= 2);
    Agent ag = new Agent();
    ag.initAg();
    ag.getBB().add(ASSyntax.parseLiteral("b(10, (vl(X) & not X > 10))"));
    Iterator<Unifier> i = l.logicalConsequence(ag, new Unifier());
    assertTrue(i.hasNext());
    l = (Literal)l.capply(i.next());
    System.out.println(l);
    assertEquals("b(10,(vl(X) & not ((X > 10))))", l.toString());
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:18,代码来源:ExprTermTest.java

示例6: testApply1

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testApply1() throws ParseException {
    Term t = ASSyntax.parseTerm("A::bob");
    Unifier u = new Unifier();
    u.unifies(new VarTerm("A"), new Atom("ns"));
    t = t.capply(u);
    assertEquals("ns::bob", t.toString());

    t = ASSyntax.parseTerm("A::~bob(10)[a(20)]");
    u = new Unifier();
    u.unifies(new VarTerm("A"), new Atom("ns"));
    t = t.capply(u);
    assertEquals("ns::~bob(10)[a(20)]", t.toString());

    Literal l = ASSyntax.parseLiteral("f(default)");
    assertEquals(l.getTerm(0), Literal.DefaultNS);
    assertTrue(l.getTerm(0) == Literal.DefaultNS);
    Literal p = ASSyntax.parseLiteral("f(NS)");
    u = new Unifier();
    u.unifies(p, l);
    p = (Literal)p.capply(u);
    assertTrue(p.getTerm(0) == Literal.DefaultNS);
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:23,代码来源:NSTest.java

示例7: testCompare

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testCompare() throws ParseException {
    Literal p1 = ASSyntax.parseLiteral("ns1::a");
    Literal p2 = ASSyntax.parseLiteral("ns2::b");
    Literal p3 = ASSyntax.parseLiteral("ns2::a");

    //assertNotSame(p1.getPredicateIndicator().hashCode(), p2.getPredicateIndicator().hashCode() );
    //assertNotSame(p1.getPredicateIndicator().hashCode(), p3.getPredicateIndicator().hashCode() );
    assertNotSame(p1.hashCode(), p3.hashCode() );

    assertEquals(p1.compareTo(p2), -1);
    assertEquals(p1.compareTo(null), -1);
    assertEquals(p2.compareTo(p1), 1);
    assertEquals(p1.compareTo(p1), 0);

    p1 = ASSyntax.parseLiteral("ns1::a");
    p2 = ASSyntax.parseLiteral("ns1::b");

    assertEquals(p1.compareTo(p2), -1);
    assertEquals(p1.compareTo(null), -1);
    assertEquals(p2.compareTo(p1), 1);
    assertEquals(p1.compareTo(p1), 0);
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:23,代码来源:NSTest.java

示例8: testPrint

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testPrint() throws ParseException {
    Term t1 = ASSyntax.parseLiteral("ns1::kk(30, j::uu)");
    assertEquals("ns1::kk(30,j::uu)", t1.toString());
    
    t1 = ASSyntax.parseLiteral("true");
    assertEquals("true", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::kk(30, A::uu)");
    assertEquals("ns1::kk(30,A::uu)", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::kk(30, j::A)");
    assertEquals("ns1::kk(30,j::A)", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::X");
    assertEquals("ns1::X", t1.toString());

    t1 = ASSyntax.parseLiteral("X::bob");
    assertEquals("X::bob", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::~X");
    assertEquals("ns1::~X", t1.toString());
    
    t1 = ASSyntax.parseLiteral("N::~X");
    assertEquals("N::~X", t1.toString());
    
    t1 = ASSyntax.parseLiteral("ns::_");
    assertTrue(t1.toString().startsWith("ns::_"));
    
    t1 = ASSyntax.parseLiteral("ns::~p");
    assertEquals("ns::~p", t1.toString());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:32,代码来源:NSTest.java

示例9: testFactory

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testFactory() throws ParseException {
    // create the literal 'p'
    Literal l = createLiteral("p"); 
    assertEquals("p", l.toString());
    
    // create the literal 'p(a,3)'
    l = createLiteral("p", createAtom("a"), createNumber(3)); 
    assertEquals("p(a,3)", l.toString());
         
    // create the literal 'p(a,3)[s,"s"]'
    l = createLiteral("p", createAtom("a"), createNumber(3))
                         .addAnnots(createAtom("s"), createString("s"));
    assertEquals("p(a,3)[\"s\",s]", l.toString());
         
    // create the literal '~p(a,3)[s,"s"]'
    l = createLiteral(Literal.LNeg, "p", createAtom("a"), createNumber(3))
                         .addAnnots(createAtom("s"), createString("s"));
    assertEquals("~p(a,3)[\"s\",s]", l.toString());
    l = ASSyntax.parseLiteral(l.toString());
    assertEquals("~p(a,3)[\"s\",s]", l.toString());
    
    ListTerm   ll = ASSyntax.createList(); // empty list
    assertEquals("[]", ll.toString());
    
    ll = ASSyntax.createList(createAtom("a"), createLiteral("b", createNumber(5))); 
    assertEquals("[a,b(5)]", ll.toString());
    
    ll = ASSyntax.parseList(ll.toString());
    assertEquals("[a,b(5)]", ll.toString());
}
 
开发者ID:nickrfer,项目名称:code-sentinel,代码行数:31,代码来源:ASParserTest.java

示例10: testPrint

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testPrint() throws ParseException {
    Term t1 = ASSyntax.parseLiteral("ns1::kk(30, j::uu)");
    assertEquals("ns1::kk(30,j::uu)", t1.toString());

    t1 = ASSyntax.parseLiteral("true");
    assertEquals("true", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::kk(30, A::uu)");
    assertEquals("ns1::kk(30,A::uu)", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::kk(30, j::A)");
    assertEquals("ns1::kk(30,j::A)", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::X");
    assertEquals("ns1::X", t1.toString());

    t1 = ASSyntax.parseLiteral("X::bob");
    assertEquals("X::bob", t1.toString());

    t1 = ASSyntax.parseLiteral("ns1::~X");
    assertEquals("ns1::~X", t1.toString());

    t1 = ASSyntax.parseLiteral("N::~X");
    assertEquals("N::~X", t1.toString());

    t1 = ASSyntax.parseLiteral("ns::_");
    assertTrue(t1.toString().startsWith("ns::_"));

    t1 = ASSyntax.parseLiteral("ns::~p");
    assertEquals("ns::~p", t1.toString());
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:32,代码来源:NSTest.java

示例11: testNegVar

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testNegVar() throws ParseException {
    Literal l = ASSyntax.parseLiteral("~B");
    assertTrue(l.isVar());
    assertTrue(l.negated());
    l = (Literal)l.clone();
    assertTrue(l.isVar());
    assertTrue(l.negated());
    Literal l1 = ASSyntax.parseLiteral("~B");
    Literal l2 = ASSyntax.parseLiteral("B");
    assertTrue(l1.equals(l2)); // see comment in varterm equals
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:12,代码来源:ASParserTest.java

示例12: testFactory

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testFactory() throws ParseException {
    // create the literal 'p'
    Literal l = createLiteral("p");
    assertEquals("p", l.toString());

    // create the literal 'p(a,3)'
    l = createLiteral("p", createAtom("a"), createNumber(3));
    assertEquals("p(a,3)", l.toString());

    // create the literal 'p(a,3)[s,"s"]'
    l = createLiteral("p", createAtom("a"), createNumber(3))
        .addAnnots(createAtom("s"), createString("s"));
    assertEquals("p(a,3)[\"s\",s]", l.toString());

    // create the literal '~p(a,3)[s,"s"]'
    l = createLiteral(Literal.LNeg, "p", createAtom("a"), createNumber(3))
        .addAnnots(createAtom("s"), createString("s"));
    assertEquals("~p(a,3)[\"s\",s]", l.toString());
    l = ASSyntax.parseLiteral(l.toString());
    assertEquals("~p(a,3)[\"s\",s]", l.toString());

    ListTerm   ll = ASSyntax.createList(); // empty list
    assertEquals("[]", ll.toString());

    ll = ASSyntax.createList(createAtom("a"), createLiteral("b", createNumber(5)));
    assertEquals("[a,b(5)]", ll.toString());

    ll = ASSyntax.parseList(ll.toString());
    assertEquals("[a,b(5)]", ll.toString());
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:31,代码来源:ASParserTest.java

示例13: interactionCommand

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
@LINK public void interactionCommand(String cmd) throws CartagoException, jason.asSyntax.parser.ParseException {
    Literal lCmd = ASSyntax.parseLiteral(cmd);
    if (lCmd.getFunctor().equals("goalAchieved")) {
        goalDone(fixAgName(lCmd.getTerm(0).toString()), lCmd.getTerm(1).toString());
    }
}
 
开发者ID:moise-lang,项目名称:moise,代码行数:7,代码来源:SchemeBoard.java

示例14: createAgs

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
@Override
public void createAgs() throws JasonException {
    if (getProject().isJade()) {
        rJADE = new RunJadeMAS();
        rJADE.setProject(project);
        rJADE.addInitArgs( getJaCaMoProject().getPlatformParameters("jade"));
        rJADE.createButtons();
        if (rJADE.startContainer()) {
            logger.info("Jade Container started.");
        } else {
            logger.log(Level.WARNING,"Error starting JADE container!");
            return;
        }
    }

    // add jacamo archs
    List<AgentParameters> lags = new ArrayList<AgentParameters>();
    for (AgentParameters ap: getJaCaMoProject().getAgents()) {
        if (ap.getNbInstances() > 0 && getJaCaMoProject().isInDeployment(ap.getHost())) {
            if (getJaCaMoProject().getNodeHost(ap.getHost()) != null) {
                logger.warning("**** Remote agent creation is not implemented yet! The agent "+ap.getAgName()+" @ "+getJaCaMoProject().getNodeHost(ap.getHost())+" wasn't created");
                continue;
            }
            lags.add(ap);
            ap.insertArchClass( // so that the user ag arch is the first arch in the chain
                    new ClassParameters(CAgentArch.class.getName()),
                    new ClassParameters(JaCaMoAgArch.class.getName()));

            // includes mind inspector
            String debug = ap.getOption("debug");
            if (debug != null) {
                try {
                    Literal lDebug = ASSyntax.parseLiteral(debug);
                    ap.addOption(lDebug.getFunctor(), lDebug.getTerm(0).toString());
                } catch (jason.asSyntax.parser.ParseException e) {
                    logger.log(Level.WARNING, "Error installing mind inspector for agent "+ap.getAgName(),e);
                }
            }
        }
    }
    project.getAgents().clear(); // clear only after iterating the getAgInstances!
    project.getAgents().addAll(lags);
    project.fixAgentsSrc();

    if (getProject().isJade()) {
        if (getJaCaMoProject().hasPlatformParameter("jade", "-gui")) {
            Config.get().setProperty(Config.JADE_RMA, "false");
        }
        if (getJaCaMoProject().hasPlatformParameter("jade", "-sniffer")) {
            Config.get().setProperty(Config.JADE_SNIFFER, "false");
        }
        rJADE.createAgs();
    } else {
        super.createAgs();
    }
}
 
开发者ID:jacamo-lang,项目名称:jacamo,代码行数:57,代码来源:JaCaMoLauncher.java

示例15: testUnifies

import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testUnifies() throws ParseException {
    Term t1    = ASSyntax.parseLiteral("ns1::kk(30,j::uu)");
    Literal t2 = ASSyntax.parseLiteral("ns1::kk(30,j::uu)");
    Term t3 = ASSyntax.parseLiteral("kk(30,j::uu)");
    Term t4 = ASSyntax.parseLiteral("ns4::kk(30,j::uu)");

    assertTrue(new Unifier().unifies(t1, t2));

    t2 = ASSyntax.parseLiteral("ns1::kk(30,j::X)");
    Unifier u = new Unifier();
    assertTrue(u.unifies(t1, t2));
    assertEquals("uu", u.get("X").toString());

    t2 = ASSyntax.parseLiteral("ns1::kk(30,j::_)");
    u = new Unifier();
    assertTrue(u.unifies(t1, t2));

    t2 = ASSyntax.parseLiteral("ns2::kk(30,X)");
    u = new Unifier();
    assertFalse(u.unifies(t1, t2));
    assertFalse(u.unifies(t1, t3));

    t2 = ASSyntax.parseLiteral("A::kk(30,X)");
    u = new Unifier();
    assertFalse(u.unifies(t1, t2)); // X \= j::uu

    t2 = ASSyntax.parseLiteral("A::kk(30,j::X)");
    u = new Unifier();
    assertTrue(u.unifies(t1, t2));
    assertEquals("ns1", u.get("A").toString());
    assertEquals("uu", u.get("X").toString());

    u = new Unifier();
    u.unifies(new VarTerm("A"), ASSyntax.parseTerm("default"));
    u.unifies(new VarTerm("X"), ASSyntax.parseTerm("uu"));
    t2 = (Literal)t2.capply(u);
    assertEquals("kk(30,j::uu)", t2.toString());

    assertTrue(u.unifies(t2, t3));
    assertTrue(u.unifies(t3, t2));
    assertFalse(u.unifies(t2, t1));
    assertFalse(u.unifies(t1, t2));
    assertFalse(u.unifies(t4, t1));
    assertFalse(u.unifies(t1, t4));
}
 
开发者ID:jason-lang,项目名称:jason,代码行数:46,代码来源:NSTest.java


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