Package jp.ac.kobe_u.cs.prolog.lang

Examples of jp.ac.kobe_u.cs.prolog.lang.ListTerm


        if (a2.isList()){
            Term[] args = {((ListTerm)a2).car(), ((ListTerm)a2).cdr()};
            a5 = args[0];
        } else if (a2.isVariable()){
            a5 = new VariableTerm(engine);
            ((VariableTerm) a2).bind(new ListTerm(a5, new VariableTerm(engine)), engine.trail);
        } else {
            return engine.fail();
        }
        a5 = a5.dereference();
        if (a5.isStructure()){
View Full Code Here


        if (a2.isList()){
            Term[] args = {((ListTerm)a2).car(), ((ListTerm)a2).cdr()};
            a3 = args[1];
        } else if (a2.isVariable()){
            a3 = new VariableTerm(engine);
            ((VariableTerm) a2).bind(new ListTerm(new VariableTerm(engine), a3), engine.trail);
        } else {
            return engine.fail();
        }
        engine.aregs[1] = a1;
        engine.aregs[2] = a3;
View Full Code Here

            return engine.fail();
        }
        //END inline expansion
        Term[] y1 = {a3, a2};
        a7 = new StructureTerm(s2, y1);
        a8 = new ListTerm(a7, s7);
        a9 = new ListTerm(s6, a8);
        a10 = new ListTerm(a1, a9);
        a11 = new ListTerm(a5, a10);
        a12 = new ListTerm(s15, a11);
        p1 = new PRED_$dummy_27_builtins$002Epl_6(a2, a5, a3, new VariableTerm(engine), a1, a4, cont);
        p2 = new PRED_$builtin_message_1(a12, p1);
        p3 = new PRED_$cut_1(a6, p2);
        return new PRED_clause_2(s14, new VariableTerm(engine), p3);
    }
View Full Code Here

        a8 = new StructureTerm(s1, y2);
        Term[] y3 = {a4, a5};
        a9 = new StructureTerm(s2, y3);
        Term[] y4 = {a2, a9};
        a10 = new StructureTerm(s1, y4);
        a11 = new ListTerm(a10, s11);
        a12 = new ListTerm(s6, a11);
        p1 = new PRED_$cut_1(a6, cont);
        p2 = new PRED_print_message_2(s5, a12, p1);
        return new PRED_retract_1(a8, p2);
    }
View Full Code Here

            a6 = args[0];
            a7 = args[1];
        } else if (a3.isVariable()){
            a6 = new VariableTerm(engine);
            a7 = new VariableTerm(engine);
            ((VariableTerm) a3).bind(new ListTerm(a6, a7), engine.trail);
        } else {
            return engine.fail();
        }
        a6 = a6.dereference();
        if (a6.isStructure()){
            if (! s14.equals(((StructureTerm)a6).functor()))
                return engine.fail();
            Term[] args = ((StructureTerm)a6).args();
            if (! s11.unify(args[0], engine.trail))
                return engine.fail();
            a8 = args[1];
        } else if (a6.isVariable()){
            a8 = new VariableTerm(engine);
            Term[] args = {s11, a8};
            ((VariableTerm) a6).bind(new StructureTerm(s14, args), engine.trail);
        } else {
            return engine.fail();
        }
        a4 = a4.dereference();
        if (a4.isList()){
            Term[] args = {((ListTerm)a4).car(), ((ListTerm)a4).cdr()};
            a9 = args[0];
            a10 = args[1];
        } else if (a4.isVariable()){
            a9 = new VariableTerm(engine);
            a10 = new VariableTerm(engine);
            ((VariableTerm) a4).bind(new ListTerm(a9, a10), engine.trail);
        } else {
            return engine.fail();
        }
        a9 = a9.dereference();
        if (a9.isStructure()){
            if (! s15.equals(((StructureTerm)a9).functor()))
                return engine.fail();
            Term[] args = ((StructureTerm)a9).args();
            if (! s11.unify(args[0], engine.trail))
                return engine.fail();
            if (! a8.unify(args[1], engine.trail))
                return engine.fail();
        } else if (a9.isVariable()){
            Term[] args = {s11, a8};
            ((VariableTerm) a9).bind(new StructureTerm(s15, args), engine.trail);
        } else {
            return engine.fail();
        }
        //START inline expansion of $neck_cut
        engine.neckCut();
        //END inline expansion
        Term[] y1 = {s11, a8};
        a11 = new StructureTerm(s15, y1);
        a12 = new ListTerm(a11, a5);
        return new PRED_$read_tokens_4(a1, a7, a10, a12, cont);
    }
View Full Code Here

            a7 = args[0];
            a8 = args[1];
        } else if (a3.isVariable()){
            a7 = new VariableTerm(engine);
            a8 = new VariableTerm(engine);
            ((VariableTerm) a3).bind(new ListTerm(a7, a8), engine.trail);
        } else {
            return engine.fail();
        }
        a7 = a7.dereference();
        if (a7.isStructure()){
View Full Code Here

            a7 = args[0];
            a8 = args[1];
        } else if (a3.isVariable()){
            a7 = new VariableTerm(engine);
            a8 = new VariableTerm(engine);
            ((VariableTerm) a3).bind(new ListTerm(a7, a8), engine.trail);
        } else {
            return engine.fail();
        }
        a7 = a7.dereference();
        if (a7.isStructure()){
            if (! s14.equals(((StructureTerm)a7).functor()))
                return engine.fail();
            Term[] args = ((StructureTerm)a7).args();
            if (! a6.unify(args[0], engine.trail))
                return engine.fail();
            a9 = args[1];
        } else if (a7.isVariable()){
            a9 = new VariableTerm(engine);
            Term[] args = {a6, a9};
            ((VariableTerm) a7).bind(new StructureTerm(s14, args), engine.trail);
        } else {
            return engine.fail();
        }
        a4 = a4.dereference();
        if (a4.isList()){
            Term[] args = {((ListTerm)a4).car(), ((ListTerm)a4).cdr()};
            a10 = args[0];
            a11 = args[1];
        } else if (a4.isVariable()){
            a10 = new VariableTerm(engine);
            a11 = new VariableTerm(engine);
            ((VariableTerm) a4).bind(new ListTerm(a10, a11), engine.trail);
        } else {
            return engine.fail();
        }
        a10 = a10.dereference();
        if (a10.isStructure()){
            if (! s15.equals(((StructureTerm)a10).functor()))
                return engine.fail();
            Term[] args = ((StructureTerm)a10).args();
            if (! a6.unify(args[0], engine.trail))
                return engine.fail();
            if (! a9.unify(args[1], engine.trail))
                return engine.fail();
        } else if (a10.isVariable()){
            Term[] args = {a6, a9};
            ((VariableTerm) a10).bind(new StructureTerm(s15, args), engine.trail);
        } else {
            return engine.fail();
        }
        //START inline expansion of $neck_cut
        engine.neckCut();
        //END inline expansion
        Term[] y1 = {a6, a9};
        a12 = new StructureTerm(s15, y1);
        a13 = new ListTerm(a12, a5);
        return new PRED_$read_tokens_4(a1, a8, a11, a13, cont);
    }
View Full Code Here

            if (! a2.unify(args[0], engine.trail))
                return engine.fail();
            a6 = args[1];
        } else if (a3.isVariable()){
            a6 = new VariableTerm(engine);
            ((VariableTerm) a3).bind(new ListTerm(a2, a6), engine.trail);
        } else {
            return engine.fail();
        }
        return new PRED_$read_tokens_4(a1, a6, a4, a5, cont);
    }
View Full Code Here

            a2 = args[0];
            a3 = args[1];
        } else if (a1.isVariable()){
            a2 = new VariableTerm(engine);
            a3 = new VariableTerm(engine);
            ((VariableTerm) a1).bind(new ListTerm(a2, a3), engine.trail);
        } else {
            return engine.fail();
        }
        //START inline expansion of $neck_cut
        engine.neckCut();
View Full Code Here

            a6 = args[0];
            a7 = args[1];
        } else if (a1.isVariable()){
            a6 = new VariableTerm(engine);
            a7 = new VariableTerm(engine);
            ((VariableTerm) a1).bind(new ListTerm(a6, a7), engine.trail);
        } else {
            return engine.fail();
        }
        //START inline expansion of $neck_cut
        engine.neckCut();
View Full Code Here

TOP

Related Classes of jp.ac.kobe_u.cs.prolog.lang.ListTerm

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.