whombx
null+****@clear*****
Sun Aug 4 18:00:54 JST 2013
whombx 2013-08-04 18:00:54 +0900 (Sun, 04 Aug 2013) New Revision: 9551808019b2001161fb375c384eb569894efb3b https://github.com/groonga/groonga/commit/9551808019b2001161fb375c384eb569894efb3b Merged 9ec7870: Merge pull request #71 from whombx/grn-table-cursor-open Message: doc: move grn_table_cursor_open() document to Sphinx text from header file Added files: doc/source/reference/api/grn_table_cursor.txt Modified files: doc/files.am include/groonga.h Modified: doc/files.am (+4 -0) =================================================================== --- doc/files.am 2013-08-04 15:33:05 +0900 (06d8c13) +++ doc/files.am 2013-08-04 18:00:54 +0900 (24f424e) @@ -349,6 +349,7 @@ absolute_source_files = \ $(top_srcdir)/doc/source/reference/api.txt \ $(top_srcdir)/doc/source/reference/api/grn_ctx.txt \ $(top_srcdir)/doc/source/reference/api/grn_expr.txt \ + $(top_srcdir)/doc/source/reference/api/grn_table_cursor.txt \ $(top_srcdir)/doc/source/reference/cast.txt \ $(top_srcdir)/doc/source/reference/command.txt \ $(top_srcdir)/doc/source/reference/command/command_version.txt \ @@ -811,6 +812,7 @@ source_files_relative_from_doc_dir = \ source/reference/api.txt \ source/reference/api/grn_ctx.txt \ source/reference/api/grn_expr.txt \ + source/reference/api/grn_table_cursor.txt \ source/reference/cast.txt \ source/reference/command.txt \ source/reference/command/command_version.txt \ @@ -1040,6 +1042,7 @@ html_files_relative_from_locale_dir = \ html/_sources/reference/api.txt \ html/_sources/reference/api/grn_ctx.txt \ html/_sources/reference/api/grn_expr.txt \ + html/_sources/reference/api/grn_table_cursor.txt \ html/_sources/reference/cast.txt \ html/_sources/reference/command.txt \ html/_sources/reference/command/command_version.txt \ @@ -1202,6 +1205,7 @@ html_files_relative_from_locale_dir = \ html/reference/api.html \ html/reference/api/grn_ctx.html \ html/reference/api/grn_expr.html \ + html/reference/api/grn_table_cursor.html \ html/reference/cast.html \ html/reference/command.html \ html/reference/command/command_version.html \ Added: doc/source/reference/api/grn_table_cursor.txt (+64 -0) 100644 =================================================================== --- /dev/null +++ doc/source/reference/api/grn_table_cursor.txt 2013-08-04 18:00:54 +0900 (18ca854) @@ -0,0 +1,64 @@ +.. -*- rst -*- + +.. highlightlang:: none + +``grn_table_cursor`` +==================== + +Summary +------- + +TODO... + +Example +------- + +TODO... + +Reference +--------- + +.. c:type:: grn_table_cursor + + TODO... + +.. c:function:: grn_table_cursor *grn_table_cursor_open(grn_ctx *ctx, grn_obj *table, const void *min, unsigned int min_size, const void *max, unsigned int max_size, int offset, int limit, int flags) + + tableに登録されているレコードを順番に取り出すためのカーソルを生成して返します。 + + :param table: 対象tableを指定します。 + :param min: keyの下限を指定します。(NULLは下限なしと見なします。) ``GRN_CURSOR_PREFIX`` については後述。 + :param min_size: minのsizeを指定します。``GRN_CURSOR_PREFIX`` については後述。 + :param max: keyの上限を指定します。(NULLは上限なしと見なします。) ``GRN_CURSOR_PREFIX`` については後述。 + :param max_size: maxのsizeを指定します。``GRN_CURSOR_PREFIX`` については無視される場合があります。 + :param flags: + ``GRN_CURSOR_ASCENDING`` を指定すると昇順にレコードを取り出します。 + + ``GRN_CURSOR_DESCENDING`` を指定すると降順にレコードを取り出します。(下記 ``GRN_CURSOR_PREFIX`` を指定し、keyが近いレコードを取得する場合、もしくは、common prefix searchを行う場合には、``GRN_CURSOR_ASCENDING`` / ``GRN_CURSOR_DESCENDING`` は無視されます。) + + ``GRN_CURSOR_GT`` を指定するとminに一致したkeyをcursorの範囲に含みません。(minがNULLの場合もしくは、下記 ``GRN_CURSOR_PREFIX`` を指定し、keyが近いレコードを取得する場合、もしくは、common prefix searchを行う場合には、``GRN_CURSOR_GT`` は無視されます。) + + ``GRN_CURSOR_LT`` を指定するとmaxに一致したkeyをcursorの範囲に含みません。(maxがNULLの場合もしくは、下記 ``GRN_CURSOR_PREFIX`` を指定した場合には、``GRN_CURSOR_LT`` は無視されます。) + + ``GRN_CURSOR_BY_ID`` を指定するとID順にレコードを取り出します。(下記 ``GRN_CURSOR_PREFIX`` を指定した場合には、``GRN_CURSOR_BY_ID`` は無視されます。) ``GRN_OBJ_TABLE_PAT_KEY`` を指定したtableについては、``GRN_CURSOR_BY_KEY`` を指定するとkey順にレコードを取り出します。( ``GRN_OBJ_TABLE_HASH_KEY`` , ``GRN_OBJ_TABLE_NO_KEY`` を指定したテーブルでは ``GRN_CURSOR_BY_KEY`` は無視されます。) + + ``GRN_CURSOR_PREFIX`` を指定すると、 ``GRN_OBJ_TABLE_PAT_KEY`` を指定したテーブルに関する下記のレコードを取り出すカーソルが作成されます。maxがNULLの場合には、keyがminと前方一致するレコードを取り出します。max_sizeパラメータは無視されます。 + + maxとmax_sizeが指定され、かつ、テーブルのkeyがShortText型である場合、maxとcommon prefix searchを行い、common prefixがmin_sizeバイト以上のレコードを取り出します。minは無視されます。 + + maxとmax_sizeが指定され、かつ、テーブルのkeyが固定長型の場合、maxとPAT木上で近い位置にあるノードから順番にレコードを取り出します。ただし、keyのパトリシア木で、min_sizeバイト未満のビットに対するノードで、maxと異なった方向にあるノードに対応するレコードについては取り出しません。PAT木上で位置が近いこととkeyの値が近いことは同一ではありません。この場合、maxで与えられるポインタが指す値は、対象テーブルのkeyサイズと同じか超える幅である必要があります。minは無視されます。 + + ``GRN_CURSOR_BY_ID`` / ``GRN_CURSOR_BY_KEY`` / ``GRN_CURSOR_PREFIX`` の3フラグは、同時に指定することができません。 + + ``GRN_OBJ_TABLE_PAT_KEY`` を指定して作ったテーブルで、``GRN_CURSOR_PREFIX`` と ``GRN_CURSOR_RK`` を指定すると、半角小文字のアルファベット文字列から、それを旧JIS X 4063:2000規格に従って全角カタカナに変換した文字列に前方一致する値をkeyとするレコードを取り出します。``GRN_ENC_UTF8`` のみをサポートしています。``GRN_CURSOR_ASCENDING`` / ``GRN_CURSOR_DESCENDING`` は無効であり、レコードをkey値の昇降順で取り出すことはできません。 + + :param offset: + 該当する範囲のレコードのうち、(0ベースで)offset番目からレコードを取り出します。 + + ``GRN_CURSOR_PREFIX`` を指定したときは負の数を指定することはできません。 + + :param limit: + 該当する範囲のレコードのうち、limit件のみを取り出します。-1が指定された場合は、全件が指定されたものとみなします。 + + ``GRN_CURSOR_PREFIX`` を指定したときは-1より小さい負の数を指定することはできません。 + Modified: include/groonga.h (+0 -79) =================================================================== --- include/groonga.h 2013-08-04 15:33:05 +0900 (a6b18b4) +++ include/groonga.h 2013-08-04 18:00:54 +0900 (eb2588a) @@ -799,85 +799,6 @@ typedef grn_obj grn_table_cursor; #define GRN_CURSOR_SIZE_BY_BIT (0x01<<5) #define GRN_CURSOR_RK (0x01<<6) -/** - * grn_table_cursor_open: - * @table: 対象table - * @min: keyの下限 (NULLは下限なしと見なす)、GRN_CURSOR_PREFIXについては後述 - * @min_size: @minのsize、GRN_CURSOR_PREFIXについては後述 - * @max: keyの上限 (NULLは上限なしと見なす)、GRN_CURSOR_PREFIXについては後述 - * @max_size: @maxのsize、GRN_CURSOR_PREFIXについては無視される場合がある - * @flags: GRN_CURSOR_ASCENDINGを指定すると昇順にレコードを取り出す。 - * - * GRN_CURSOR_DESCENDINGを指定すると降順にレコードを取り出す。 - * (下記GRN_CURSOR_PREFIXを指定し、 - * keyが近いレコードを取得する場合、 - * もしくは、common prefix searchを行う場合には、 - * GRN_CURSOR_ASCENDING/DESCENDINGは無視される) - * - * GRN_CURSOR_GTを指定するとminに一致したkeyをcursorの範囲に含まない。 - * (minがNULLの場合もしくは、下記GRN_CURSOR_PREFIXを指定し、 - * keyが近いレコードを取得する場合、 - * もしくは、common prefix searchを行う場合には、 - * GRN_CURSOR_GTは無視される) - * - * GRN_CURSOR_LTを指定するとmaxに一致したkeyをcursorの範囲に含まない。 - * (maxがNULLの場合もしくは、下記GRN_CURSOR_PREFIXを指定した場合には、 - * GRN_CURSOR_LTは無視される) - * - * GRN_CURSOR_BY_IDを指定するとID順にレコードを取り出す。 - * (下記GRN_CURSOR_PREFIXを指定した場合には、 - * GRN_CURSOR_BY_IDは無視される) - * GRN_OBJ_TABLE_PAT_KEYを指定したtableについては、 - * GRN_CURSOR_BY_KEYを指定するとkey順にレコードを取り出す。 - * (GRN_OBJ_TABLE_HASH_KEY,GRN_OBJ_TABLE_NO_KEYを指定したテーブルでは - * GRN_CURSOR_BY_KEYは無視される) - * - * GRN_CURSOR_PREFIXを指定すると、 - * GRN_OBJ_TABLE_PAT_KEYを指定したテーブルに関する - * 下記のレコードを取り出すカーソルが作成される。 - * - * maxがNULLの場合には、keyがminと前方一致するレコードを取り出す。 - * max_sizeパラメータは無視される。 - * - * maxとmax_sizeが指定され、かつ、テーブルのkeyがShortText型である場合、 - * maxとcommon prefix searchを行い、 - * common prefixがmin_sizeバイト以上のレコードを取り出す。 - * minは無視される。 - * - * maxとmax_sizeが指定され、かつ、テーブルのkeyが固定長型の場合、 - * maxとPAT木上で近い位置にあるノードから順番にレコードを取り出す。 - * ただし、keyのパトリシア木で、min_sizeバイト未満のビットに対する - * ノードで、maxと異なった方向にあるノードに対応するレコードについては - * 取り出さない。 - * PAT木上で位置が近いこととkeyの値が近いことは同一ではない。 - * この場合、maxで与えられるポインタが指す値は、 - * 対象テーブルのkeyサイズと同じか超える幅である必要がある。 - * minは無視される。 - * - * GRN_CURSOR_BY_ID/GRN_CURSOR_BY_KEY/GRN_CURSOR_PREFIXの3フラグは、 - * 同時に指定することができない。 - * - * GRN_OBJ_TABLE_PAT_KEYを指定して作ったテーブルで、 - * GRN_CURSOR_PREFIXとGRN_CURSOR_RKを指定すると、 - * 半角小文字のアルファベット文字列から、それを旧JIS X 4063:2000規格に - * 従って全角カタカナに変換した文字列に前方一致する値をkeyとするレコードを - * 取り出す。GRN_ENC_UTF8のみをサポートしている。 - * GRN_CURSOR_ASCENDING/DESCENDINGは無効であり、レコードをkey値の昇降順で - * 取り出すことはできない。 - * - * @offset: 該当する範囲のレコードのうち、 - * (0ベースで)offset番目からレコードを取り出す。 - * - * GRN_CURSOR_PREFIXを指定したときは負の数を指定する - * ことはできない。 - * @limit: 該当する範囲のレコードのうち、limit件のみを取り出す。 - * -1が指定された場合は、全件が指定されたものとみなす。 - * - * GRN_CURSOR_PREFIXを指定したときは-1より小さい負の - * 数を指定することはできない。 - * - * tableに登録されているレコードを順番に取り出すためのカーソルを生成して返す。 - **/ GRN_API grn_table_cursor *grn_table_cursor_open(grn_ctx *ctx, grn_obj *table, const void *min, unsigned int min_size, const void *max, unsigned int max_size, -------------- next part -------------- HTML����������������������������...Download