/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
/*
 * This file is part of the LibreOffice project.
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */

 module com {  module sun {  module star {  module sdbc {


/** provides SQL ROWID value which is a built-in type, a value of which can be thought of as an address for its identified row in a database table.
    Whether that address is logical or, in any respects, physical is determined by its originating data source
    for the releasing of resources acquired by the implementing object.

    @since LibreOffice 25.8
 */
interface XRowId
{

    /** Compares this RowId to the specified object.
        @throws SQLException
            if a database access error occurs.
     */
    boolean equals([in]any x);

    /** Returns an array of bytes representing the value of the SQL ROWID designated by this RowId object.
        @throws SQLException
            if a database access error occurs.
     */
    sequence<byte> getBytes();

    /** Returns a hash code value of this RowId object.
        @throws SQLException
            if a database access error occurs.
     */
    long hashCode();

    /** Returns a String representing the value of the SQL ROWID designated by this RowId object.
        @throws SQLException
            if a database access error occurs.
     */
    string toString();
};


}; }; }; };

/*===========================================================================
===========================================================================*/

/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
