package SQLite; /** * Class to represent compiled SQLite VM. */ public class Vm { /** * Internal handle for the compiled SQLite VM. */ private long handle = 0; /** * Internal last error code for compile()/step() methods. */ protected int error_code = 0; /** * Perform one step on compiled SQLite VM. * The result row is passed to the given callback interface.

* * Example:
*
     *   ...
     *   try {
     *     Vm vm = db.compile("select * from x; select * from y;");
     *     while (vm.step(cb)) {
     *       ...
     *     }
     *     while (vm.compile()) {
     *       while (vm.step(cb)) {
     *         ...
     *       }
     *     }
     *   } catch (SQLite.Exception e) {
     *   }
     * 
* * @param cb the object implementing the callback methods. * @return true as long as more row data can be retrieved, * false, otherwise. */ public native boolean step(Callback cb) throws SQLite.Exception; /** * Compile the next SQL statement for the SQLite VM instance. * @return true when SQL statement has been compiled, false * on end of statement sequence. */ public native boolean compile() throws SQLite.Exception; /** * Abort the compiled SQLite VM. */ public native void stop() throws SQLite.Exception; /** * Destructor for object. */ protected native void finalize(); /** * Internal native initializer. */ private static native void internal_init(); static { internal_init(); } }