Logo Search packages:      
Sourcecode: yap version File versions  Download package

jpl::fli::Prolog Class Reference

List of all members.

Detailed Description

This class consists only of constants (static finals) and static native methods. The constants and methods defined herein are in (almost) strict 1-1 correspondence with the functions in the Prolog FLI by the same name (except without the PL_, SQ_, etc. prefixes).

See the file jpl_fli_Prolog.c for the native implementations of these methods. Refer to your local Prolog FLI documentations for the meanings of these methods, and observe the following:

<menu> The types and signatures of the following methods are almost in 1-1 correspondence with the Prolog FLI. The Prolog types term_t, atom_t, functor_t, etc. are mirrored in this package with classes by the same name, making the C and Java uses of these interfaces similar. As term_t, functor_t, etc. types are Java classes, they are passed to these methods by value; however, calling these methods on such class instances does have side effects. In general, the value fields of these instances will be modified, in much the same way the term_t, functor_t, etc. Prolog instances would be modified. The exceptions to this rule occur when maintaining the same signature would be impossible, e.g., when the Prolog FLI functions require pointers; in this case, the signatures have been modified to take *Holder classes (Int, Double, String, etc.), to indicate a call by reference parameter. Functions which take variable-length argument lists in C take arrays in Java; from Java 1.1 onwards, anonymous arrays can be used e.g. Term[] { new Atom("a"), new Atom ("b") } </menu>

Copyright (C) 1998 Fred Dushin

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library Public License for more details.

Fred Dushin <fadushin@syr.edu>

Definition at line 79 of file Prolog.java.

Static Public Member Functions

static native int action_abort ()
static native String atom_chars (atom_t a)
static native int attach_engine (engine_t e)
static native engine_t attach_pool_engine ()
static native boolean call (term_t t, module_t m)
static native boolean call_predicate (module_t m, int debug, predicate_t pred, term_t t0)
static native void close_foreign_frame (fid_t cid)
static native void close_query (qid_t qid)
static native int compare (term_t t1, term_t t2)
static native void cons_functor_v (term_t h, functor_t fd, term_t a0)
static native void cons_list (term_t l, term_t h, term_t t)
static native module_t context ()
static native term_t copy_term_ref (term_t from)
static native engine_t current_engine ()
static native boolean current_engine_is_pool ()
static native void cut_query (qid_t qid)
static native void discard_foreign_frame (fid_t cid)
static native term_t exception (qid_t qid)
static native int functor_arity (functor_t f)
static native atom_t functor_name (functor_t f)
static native String[] get_actual_init_args ()
static native boolean get_arg (int index, term_t t, term_t a)
static native boolean get_atom (term_t t, atom_t a)
static native boolean get_atom_chars (term_t t, StringHolder a)
static native String get_c_lib_version ()
static native String[] get_default_init_args ()
static native boolean get_float (term_t t, DoubleHolder d)
static native boolean get_functor (term_t t, functor_t f)
static native boolean get_integer (term_t t, IntHolder i)
static native boolean get_jboolean (term_t t, BooleanHolder b)
static native boolean get_jref (term_t t, ObjectHolder obj)
static native boolean get_module (term_t t, module_t module)
static native boolean get_name_arity (term_t t, StringHolder name, IntHolder arity)
static native boolean get_pointer (term_t t, PointerHolder ptr)
static native boolean get_string_chars (term_t t, StringHolder s)
static native void halt (int status)
static native boolean initialise ()
static native boolean is_atom (term_t t)
static native boolean is_atomic (term_t t)
static native boolean is_compound (term_t t)
static native boolean is_float (term_t t)
static native boolean is_functor (term_t t, functor_t f)
static native boolean is_integer (term_t t)
static native boolean is_number (term_t t)
static native boolean is_variable (term_t t)
static native atom_t module_name (module_t module)
static native atom_t new_atom (String s)
static native functor_t new_functor (atom_t f, int a)
static native module_t new_module (atom_t name)
static native term_t new_term_ref ()
static native term_t new_term_refs (int n)
static native boolean next_solution (qid_t qid)
static native fid_t open_foreign_frame ()
static native qid_t open_query (module_t m, int flags, predicate_t pred, term_t t0)
static native int pool_engine_id (engine_t e)
static native predicate_t pred (functor_t f, module_t m)
static native predicate_t predicate (String name, int arity, String module)
static native int predicate_info (predicate_t pred, atom_t name, IntHolder arity, module_t module)
static native void put_atom (term_t t, atom_t a)
static native void put_float (term_t t, double f)
static native void put_functor (term_t t, functor_t functor)
static native void put_integer (term_t t, long i)
static native void put_jboolean (term_t t, boolean b)
static native void put_jref (term_t t, Object ref)
static native void put_jvoid (term_t t)
static native void put_pointer (term_t t, PointerHolder ptr)
static native void put_term (term_t t1, term_t t2)
static native void put_variable (term_t t)
static native int release_pool_engine ()
static native void reset_term_refs (term_t r)
static native boolean set_default_init_args (String argv[])
static native int strip_module (term_t in, module_t m, term_t out)
static native int term_type (term_t t)
static native int thread_self ()
static native void unregister_atom (atom_t a)

Static Public Attributes

static final int ATOM = 2
static final int BUF_DISCARDABLE = 0x0000
static final int BUF_MALLOC = 0x0200
static final int BUF_RING = 0x0100
static final int COMPOUND = 6
static final int CVT_ALL = 0x00ff
static final int CVT_ATOM = 0x0001
static final int CVT_FLOAT = 0x0010
static final int CVT_INTEGER = 0x0008
static final int CVT_LIST = 0x0004
static final int CVT_NUMBER = (CVT_INTEGER | CVT_FLOAT)
static final int CVT_STRING = 0x0002
static final int CVT_VARIABLE = 0x0020
static final int fail = 0
static final int FLOAT = 4
static final int INTEGER = 3
static final int JBOOLEAN = 101
static final int JREF = 102
static final int JVOID = 103
static final int Q_CATCH_EXCEPTION = 0x08
static final int Q_NODEBUG = 0x04
static final int Q_NORMAL = 0x02
static final int Q_PASS_EXCEPTION = 0x10
static final int STRING = 5
static final int succeed = 1
static final int TERM = 6
static final int VARIABLE = 1

Static Package Functions

 [static initializer]

The documentation for this class was generated from the following file:

Generated by  Doxygen 1.6.0   Back to index