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

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


        throw new IllegalTypeException(this, 1, "atom", a1);
      }
      char[] chars = ((SymbolTerm) a1).name().toCharArray();
      Term x = Nil;
      for (int i = chars.length; i > 0; i--) {
        x = new ListTerm(new IntegerTerm(chars[i - 1]), x);
      }
      if (!a2.unify(x, engine.trail)) {
        return engine.fail();
      }
      return cont;
View Full Code Here


        a2 = engine.aregs[2];
        cont = engine.cont;
    // '$new_internal_database'(A,B):-[new_hash(C,[alias(B)]),'$init_internal_database'(B)]
        Term[] y1 = {a2};
        a3 = new StructureTerm(s1, y1);
        a4 = new ListTerm(a3, s2);
        p1 = new PRED_$init_internal_database_1(a2, cont);
        return new PRED_new_hash_2(new VariableTerm(engine), a4, p1);
    }
View Full Code Here

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

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

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

            a4 = args[0];
            a5 = args[1];
        } else if (a1.isVariable()){
            a4 = new VariableTerm(engine);
            a5 = new VariableTerm(engine);
            ((VariableTerm) a1).bind(new ListTerm(a4, a5), engine.trail);
        } else {
            return engine.fail();
        }
        engine.aregs[1] = a5;
        engine.aregs[2] = a4;
View Full Code Here

        if (a2.isList()){
            Term[] args = {((ListTerm)a2).car(), ((ListTerm)a2).cdr()};
            if (! a1.unify(args[0], engine.trail))
                return engine.fail();
        } else if (a2.isVariable()){
            ((VariableTerm) a2).bind(new ListTerm(a1, new VariableTerm(engine)), engine.trail);
        } else {
            return engine.fail();
        }
        return cont;
    }
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

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

            a4 = args[0];
            a5 = args[1];
        } else if (a1.isVariable()){
            a4 = new VariableTerm(engine);
            a5 = new VariableTerm(engine);
            ((VariableTerm) a1).bind(new ListTerm(a4, a5), engine.trail);
        } else {
            return engine.fail();
        }
        a6 = new VariableTerm(engine);
        a7 = new VariableTerm(engine);
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.