/* * __async_get_key -- * WT_ASYNC_OP->get_key implementation for op handles. */ static int __async_get_key(WT_ASYNC_OP *asyncop, ...) { WT_DECL_RET; va_list ap; va_start(ap, asyncop); ret = __wt_cursor_get_keyv(&asyncop->c, asyncop->c.flags, ap); va_end(ap); return (ret); }
/* * __wt_cursor_get_key -- * WT_CURSOR->get_key default implementation. */ int __wt_cursor_get_key(WT_CURSOR *cursor, ...) { WT_DECL_RET; va_list ap; va_start(ap, cursor); ret = __wt_cursor_get_keyv(cursor, cursor->flags, ap); va_end(ap); return (ret); }
/* * __wt_curtable_get_key -- * WT_CURSOR->get_key implementation for tables. */ int __wt_curtable_get_key(WT_CURSOR *cursor, ...) { WT_CURSOR *primary; WT_CURSOR_TABLE *ctable; WT_DECL_RET; va_list ap; ctable = (WT_CURSOR_TABLE *)cursor; primary = *ctable->cg_cursors; va_start(ap, cursor); ret = __wt_cursor_get_keyv(primary, cursor->flags, ap); va_end(ap); return (ret); }
/* * __curjoin_get_key -- * WT_CURSOR->get_key for join cursors. */ static int __curjoin_get_key(WT_CURSOR *cursor, ...) { WT_CURSOR_JOIN *cjoin; WT_DECL_RET; WT_SESSION_IMPL *session; va_list ap; cjoin = (WT_CURSOR_JOIN *)cursor; va_start(ap, cursor); JOINABLE_CURSOR_API_CALL(cursor, session, get_key, NULL); if (!F_ISSET(cjoin, WT_CURJOIN_INITIALIZED) || !cjoin->iter->positioned) WT_ERR_MSG(session, EINVAL, "join cursor must be advanced with next()"); WT_ERR(__wt_cursor_get_keyv(cursor, cursor->flags, ap)); err: va_end(ap); API_END_RET(session, ret); }