    /*
     *  call-seq:
     *     index_reader.close -> index_reader
     *
     *  Close the IndexReader. This method also commits any deletions made by this
     *  IndexReader. This method will be called explicitly by the garbage
     *  collector but you should call it explicitly to commit any changes as soon
     *  as possible and to close any locks held by the object to prevent locking
     *  errors.
     */
    static VALUE
    frt_ir_close(VALUE self)
    {
        IndexReader *ir = (IndexReader *)DATA_PTR(self);
        object_del(ir);
        Frt_Unwrap_Struct(self);
        ir_close(ir);
        return self;
    }