[Groonga-commit] groonga/groonga at 4ff9d17 [master] doc: add inspect API documentation (#929)

Back to archive index
Kentaro Hayashi null+****@clear*****
Thu Apr 25 16:19:29 JST 2019


Kentaro Hayashi	2019-04-25 16:19:29 +0900 (Thu, 25 Apr 2019)

  Revision: 4ff9d178a2617683bc6366dd91b6157197cba060
  https://github.com/groonga/groonga/commit/4ff9d178a2617683bc6366dd91b6157197cba060

  Message:
    doc: add inspect API documentation (#929)
    
    * doc: add inspect documentation
    
    * doc: update po

  Added files:
    doc/source/reference/api/grn_inspect.rst
  Modified files:
    doc/locale/ja/LC_MESSAGES/reference.po

  Modified: doc/locale/ja/LC_MESSAGES/reference.po (+212 -4)
===================================================================
--- doc/locale/ja/LC_MESSAGES/reference.po    2019-04-25 16:12:13 +0900 (c6939b06d)
+++ doc/locale/ja/LC_MESSAGES/reference.po    2019-04-25 16:19:29 +0900 (87316c5d7)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: 1.2.1\n"
 "Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2019-04-23 14:57+0900\n"
+"PO-Revision-Date: 2019-04-25 11:39+0900\n"
 "Last-Translator: Masafumi Yokoyama <yokoy****@clear*****>\n"
 "Language-Team: Japanese\n"
 "Language: ja\n"
@@ -1438,6 +1438,217 @@ msgstr ""
 msgid "設定しようとする値を指定します。"
 msgstr ""
 
+msgid "``grn_inspect``"
+msgstr ""
+
+msgid ""
+"There are two kind of functions to inspect :c:type:`grn_obj`. One is "
+"``grn_inspect`` function, The other is ``grn_p`` function."
+msgstr ""
+":c:type:`grn_obj` を調べるには2種類の関数があります。1つは ``grn_inspect`` 関"
+"数で、もう1つは ``grn_p`` 関数です。"
+
+msgid ""
+"Here is the list of ``grn_inspect`` function series. It sets inspected text "
+"into specified object."
+msgstr ""
+"``grn_inspect`` 系の関数のリストは次の通りです。調査したオブジェクトの内容を"
+"指定したオブジェクトに設定します。"
+
+msgid ":c:func:`grn_inspect()`"
+msgstr ""
+
+msgid ":c:func:`grn_inspect_indented()`"
+msgstr ""
+
+msgid ":c:func:`grn_inspect_limited()`"
+msgstr ""
+
+msgid ":c:func:`grn_inspect_name()`"
+msgstr ""
+
+msgid ":c:func:`grn_inspect_encoding()`"
+msgstr ""
+
+msgid ":c:func:`grn_inspect_type()`"
+msgstr ""
+
+msgid ":c:func:`grn_inspect_query_log_flags()`"
+msgstr ""
+
+msgid ""
+"Here is the list of ``grn_p`` function series. It prints inspected text into "
+"console."
+msgstr ""
+"``grn_p`` 系の関数のリストは次の通りです。調査したオブジェクトの内容をコン"
+"ソールに出力します。"
+
+msgid ":c:func:`grn_p()`"
+msgstr ""
+
+msgid ":c:func:`grn_p_geo_point()`"
+msgstr ""
+
+msgid ":c:func:`grn_p_ii_values()`"
+msgstr ""
+
+msgid "Here is an example which inspects specified target object."
+msgstr "以下はオブジェクトを調査する例です。"
+
+msgid "Inspect specified target ``obj`` object."
+msgstr "指定した ``obj`` オブジェクトを調査します。"
+
+msgid ""
+"A table is specified and it's table type is ``TABLE_PAT_KEY``, all keys are "
+"shown. If you do not want to this behavior, use :c:func:"
+"`grn_inspect_limited` instead."
+msgstr ""
+"``TABLE_PAT_KEY`` なテーブルが指定された場合、すべてのキーが表示されます。こ"
+"の挙動が望ましくない場合、 :c:func:`grn_inspect_limited` をかわりに使ってくだ"
+"さい。"
+
+msgid "The context object"
+msgstr "その時点のコンテキスト。"
+
+msgid "The buffer object which is inspected text will be stored."
+msgstr "調査した内容が保存されるオブジェクト"
+
+msgid "The inspect target object."
+msgstr "対象のオブジェクト"
+
+msgid "``buffer`` object which is inspected text is set."
+msgstr "調査した内容が設定される ``buffer`` オブジェクト"
+
+msgid "If obj is ``TABLE_PAT_KEY`` table, it prints like the following::"
+msgstr ""
+"もし ``obj`` が ``TABLE_PAT_KEY`` なテーブルであれば、次のように表示されま"
+"す::"
+
+msgid ""
+"``indent`` is only added if inspected text contains newline (inspected text "
+"must be multiple lines)."
+msgstr ""
+"``indent`` は調査した内容が改行を含む場合に追加されます。(調査した内容のテキ"
+"ストは複数行で構成されている必要があります)"
+
+msgid "The pre-pended indentation text."
+msgstr "先頭に挿入されるインデント"
+
+msgid "``buffer`` object which is inspected text is set with indent."
+msgstr "調査した内容がインデントとともに設定される ``buffer`` オブジェクト"
+
+msgid "If inspected text is too long, it will be truncated."
+msgstr "調査した内容が長い場合、切り詰められます。"
+
+msgid "The buffer object which is inspected(truncated) text will be stored."
+msgstr "調査した内容が(切り詰められて)設定されるオブジェクト"
+
+msgid ""
+"``buffer`` object which is object detail is set. If inspected text is longer "
+"than 64 characters, inspected text is truncated to it. Otherwise, inspected "
+"text will not be truncated."
+msgstr ""
+"オブジェクトの詳細が設定される ``buffer`` オブジェクト。調査した内容が64文字"
+"よりも長い場合には、その内容は切り詰められます。そうでない場合調査した内容が"
+"そのまま設定されます。"
+
+msgid ""
+"Even though if obj is ``TABLE_PAT_KEY`` table, it prints truncated result "
+"like the following::"
+msgstr ""
+"``TABLE_PAT_KEY`` なテーブルであっても、切り詰められた内容は次のように表示さ"
+"れます::"
+
+msgid "The buffer object which is object name will be stored."
+msgstr "オブジェクト名が設定されるオブジェクト"
+
+msgid ""
+"``buffer`` object which is name of object is set. If target object is nil, "
+"``(nil)`` is set to buffer, if target object is internally used object, "
+"``(anonymouse: ID)`` is set to buffer."
+msgstr ""
+"オブジェクトの名前が設定される ``buffer`` オブジェクト。指定したオブジェクト"
+"が無効な値であれば ``(nil)`` が設定され、内部で使用しているオブジェクトであれ"
+"ば ``(anonymouse: ID)`` が設定されます。"
+
+msgid "Specified object name is printed like this::"
+msgstr "調査対象のオブジェクト名は次のように表示されます::"
+
+msgid "The buffer object which is encoding name will be stored."
+msgstr "エンコーディング名が設定されるオブジェクト"
+
+msgid ""
+"The inspect target encoding. encoding must be ``GRN_ENC_DEFAULT``, "
+"``GRN_ENC_NONE``, ``GRN_ENC_EUC_JP``, ``GRN_ENC_UTF8``, ``GRN_ENC_SJIS``, "
+"``GRN_ENC_LATIN1`` or ``GRN_ENC_KOI8R``"
+msgstr ""
+"調査対象のエンコーディング。エンコーディングは ``GRN_ENC_DEFAULT``、 "
+"``GRN_ENC_NONE``、 ``GRN_ENC_EUC_JP``、 ``GRN_ENC_UTF8``、 "
+"``GRN_ENC_SJIS``、 ``GRN_ENC_LATIN1``、 ``GRN_ENC_KOI8R`` のいずれかでなけれ"
+"ばなりません。"
+
+msgid ""
+"``buffer`` object which is encoding name is set. If invalid ``encoding`` is "
+"given, ``(unknown: ENCODING)`` is set to ``buffer``."
+msgstr ""
+"エンコーディング名が設定される ``buffer`` オブジェクト。不正な ``encoding`` "
+"が渡された場合、 ``(unknown: ENCODING)`` が ``buffer`` に設定されます。"
+
+msgid "Specified encoding name is printed like the following::"
+msgstr "指定したエンコーディング名が次のように表示されます::"
+
+msgid "The buffer object which is type name will be stored."
+msgstr "型の名前が設定されるオブジェクト"
+
+msgid "The inspect target type."
+msgstr "調査対象の型"
+
+msgid ""
+"``buffer`` object which is type name is set. If invalid ``type`` is given, "
+"``(unknown: TYPE_IN_HEX)`` is set to ``buffer``."
+msgstr ""
+"型の名前が設定される ``buffer`` オブジェクト。正しくない ``type`` が渡された"
+"場合、 ``(unknown: TYPE_IN_HEX)`` が ``buffer`` に設定されます。"
+
+msgid "If obj is builtin type, type name is printed like the following::"
+msgstr "``obj`` が組込の型の場合、型の名前は次のように表示されます:"
+
+msgid "Inspect specified target ``flag``."
+msgstr "指定した ``flag`` を調査します。"
+
+msgid "The buffer object which is flag name will be stored."
+msgstr "フラグの名前が設定されるオブジェクト"
+
+msgid ""
+"``buffer`` object which is flag name is set. If invalid ``flags`` is given, "
+"empty string is set to ``buffer``."
+msgstr ""
+"フラグの名前が設定される ``buffer`` オブジェクト。不正な ``flags`` が与えられ"
+"た場合、空の文字列が ``buffer`` に設定されます。"
+
+msgid "The query logger flags are printed like the following::"
+msgstr "クエリーログのフラグは次のように表示されます::"
+
+msgid "Inspect specified target ``obj`` object. It prints inspected text."
+msgstr "指定した ``obj`` を調査し、その内容を出力します。"
+
+msgid "If obj is ``ShortText``, it prints like the following::"
+msgstr "オブジェクトが ``ShortText`` なら次のように表示されます::"
+
+msgid ""
+"Inspect specified target ``obj`` object. It prints inspected geo point text."
+msgstr "指定した ``obj`` を調査し、geo pointの内容を出力します。"
+
+msgid "If ``point`` indicates New York City, it prints like the following::"
+msgstr "もし ``point`` がニューヨークを示す場合、次のように表示されます::"
+
+msgid ""
+"Inspect specified target ``obj`` object. It prints inspected index values."
+msgstr "指定した ``obj`` を調査し、インデックスの値を出力します。"
+
+msgid "If ``obj`` is an index column, it prints like the following::"
+msgstr "もし ``obj`` がインデックスカラムの場合、次のように表示されます::"
+
 msgid "``grn_match_escalation``"
 msgstr ""
 
@@ -29297,6 +29508,3 @@ msgstr ""
 
 msgid "``window_sum``"
 msgstr ""
-
-#~ msgid "It specifies a flag of ``grndb`` log."
-#~ msgstr "``grndb`` のログに出力する内容を指定します。"

  Added: doc/source/reference/api/grn_inspect.rst (+289 -0) 100644
===================================================================
--- /dev/null
+++ doc/source/reference/api/grn_inspect.rst    2019-04-25 16:19:29 +0900 (51c526f54)
@@ -0,0 +1,289 @@
+.. -*- rst -*-
+
+.. highlightlang:: none
+
+``grn_inspect``
+===============
+
+Summary
+-------
+
+There are two kind of functions to inspect :c:type:`grn_obj`. One is ``grn_inspect`` function, The other is ``grn_p`` function.
+
+Here is the list of ``grn_inspect`` function series. It sets inspected text into specified object.
+
+* :c:func:`grn_inspect()`
+* :c:func:`grn_inspect_indented()`
+* :c:func:`grn_inspect_limited()`
+* :c:func:`grn_inspect_name()`
+* :c:func:`grn_inspect_encoding()`
+* :c:func:`grn_inspect_type()`
+* :c:func:`grn_inspect_query_log_flags()`
+
+Here is the list of ``grn_p`` function series. It prints inspected text into console.
+
+* :c:func:`grn_p()`
+* :c:func:`grn_p_geo_point()`
+* :c:func:`grn_p_ii_values()`
+
+Example
+-------
+
+Here is an example which inspects specified target object.
+
+.. code-block:: c
+
+   grn_obj buffer;
+   GRN_TEXT_INIT(&buffer, 0);
+   grn_inspect(&context, &buffer, obj);
+   /* equivalent to grn_p(ctx, obj); */
+   printf("inspected: <%.*s>\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+Reference
+---------
+
+.. c:function:: grn_obj *grn_inspect(grn_ctx *ctx, grn_obj *buffer, grn_obj *obj)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+
+   .. note:: A table is specified and it's table type is ``TABLE_PAT_KEY``, all keys are shown.
+             If you do not want to this behavior, use :c:func:`grn_inspect_limited` instead.
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is inspected text will be stored.
+   :param obj: The inspect target object.
+   :return: ``buffer`` object which is inspected text is set.
+
+   .. code-block:: c
+
+      grn_obj buffer;
+      GRN_TEXT_INIT(&buffer, 0);
+      grn_inspect(&context, &buffer, obj);
+      printf("%.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   If obj is ``TABLE_PAT_KEY`` table, it prints like the following::
+
+     #<table:pat Users key:ShortText value:(nil) size:7 columns:[] default_tokenizer:(nil) normalizer:(nil) keys:["a", "b", "c", "d", "e", "f", "g"] subrec:none nodes:{
+     4{0,5,0}
+       L:2{0,6,0}
+         L:1{0,7,0}
+           L:0{0,0,0}
+           R:1{0,7,0}("a")[01100001]
+     ...
+
+.. c:function:: grn_obj *grn_inspect_indented(grn_ctx *ctx, grn_obj *buffer, grn_obj *obj, const char *indent)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+
+   .. note:: ``indent`` is only added if inspected text contains newline (inspected text must be multiple lines).
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is inspected text will be stored.
+   :param obj: The inspect target object.
+   :param indent: The pre-pended indentation text.
+   :return: ``buffer`` object which is inspected text is set with indent.
+
+   .. code-block:: c
+
+      grn_obj buffer;
+      GRN_TEXT_INIT(&buffer, 0);
+      grn_inspect_indented(&context, &buffer, obj, "***");
+      printf("%.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   If obj is ``TABLE_PAT_KEY`` table, it prints like the following::
+
+     ***#<table:pat Users key:ShortText value:(nil) size:7 columns:[] default_tokenizer:(nil) normalizer:(nil) keys:["a", "b", "c", "d", "e", "f", "g"] subrec:none nodes:{
+     ***4{0,5,0}
+     ***  L:2{0,6,0}
+     ***    L:1{0,7,0}
+     ***      L:0{0,0,0}
+     ***      R:1{0,7,0}("a")[01100001]
+     ...
+
+.. c:function:: grn_obj *grn_inspect_limited(grn_ctx *ctx, grn_obj *buffer, grn_obj *obj)
+
+   .. versionadded:: 7.0.0
+
+   Inspect specified target ``obj`` object.
+
+   .. note:: If inspected text is too long, it will be truncated.
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is inspected(truncated) text will be stored.
+   :param obj: The inspect target object.
+   :return: ``buffer`` object which is object detail is set.
+            If inspected text is longer than 64 characters, inspected text is truncated to it. Otherwise, inspected text will not be truncated.
+
+   .. code-block:: c
+
+      grn_obj buffer;
+      GRN_TEXT_INIT(&buffer, 0);
+      grn_inspect(&context, &buffer, obj);
+      printf("#=> %.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   Even though if obj is ``TABLE_PAT_KEY`` table, it prints truncated result like the following::
+
+     #<table:pat Users key:ShortText value:(nil) size:7 columns:[] de...(502)
+
+.. c:function:: grn_obj *grn_inspect_name(grn_ctx *ctx, grn_obj *buffer, grn_obj *obj)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is object name will be stored.
+   :param obj: The inspect target object.
+   :return: ``buffer`` object which is name of object is set.
+            If target object is nil, ``(nil)`` is set to buffer, if target object is internally used object, ``(anonymouse: ID)`` is set to buffer.
+
+   .. code-block:: c
+
+      grn_obj buffer;
+      GRN_TEXT_INIT(&buffer, 0);
+      grn_inspect_name(&context, &buffer, obj);
+      printf("%.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   Specified object name is printed like this::
+
+     Users
+
+.. c:function:: grn_obj *grn_inspect_encoding(grn_ctx *ctx, grn_obj *buffer, grn_encoding encoding)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is encoding name will be stored.
+   :param encoding: The inspect target encoding. encoding must be ``GRN_ENC_DEFAULT``, ``GRN_ENC_NONE``, ``GRN_ENC_EUC_JP``, ``GRN_ENC_UTF8``, ``GRN_ENC_SJIS``, ``GRN_ENC_LATIN1`` or ``GRN_ENC_KOI8R``
+   :return: ``buffer`` object which is encoding name is set.
+            If invalid ``encoding`` is given, ``(unknown: ENCODING)`` is set to ``buffer``.
+
+   .. code-block:: c
+
+      grn_obj buffer;
+      GRN_TEXT_INIT(&buffer, 0);
+      grn_inspect_encoding(&context, &buffer, GRN_ENC_UTF8);
+      printf("%.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   Specified encoding name is printed like the following::
+
+     UTF-8
+
+.. c:function:: grn_obj *grn_inspect_type(grn_ctx *ctx, grn_obj *buffer, unsigned char type)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is type name will be stored.
+   :param type: The inspect target type.
+   :return: ``buffer`` object which is type name is set.
+            If invalid ``type`` is given, ``(unknown: TYPE_IN_HEX)`` is set to ``buffer``.
+
+   .. code-block:: c
+
+      grn_obj buffer;
+      GRN_TEXT_INIT(&buffer, 0);
+      grn_inspect_type(&context, &buffer, obj->header.type);
+      printf("#=> %.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   If obj is builtin type, type name is printed like the following::
+
+     GRN_TYPE
+
+.. c:function:: grn_obj *grn_inspect_query_log_flags(grn_ctx *ctx, grn_obj *buffer, unsigned int flags)
+
+   .. versionadded:: 7.0.4
+
+   Inspect specified target ``flag``.
+
+   :param ctx: The context object
+   :param buffer: The buffer object which is flag name will be stored.
+   :param flags: The inspect target type.
+   :return: ``buffer`` object which is flag name is set.
+            If invalid ``flags`` is given, empty string is set to ``buffer``.
+
+   .. code-block:: c
+
+       grn_obj buffer;
+       GRN_TEXT_INIT(&buffer, 0);
+       int current_flags = grn_query_logger_get_flags(&context);
+       grn_inspect_query_log_flags(&context, &buffer, current_flags);
+       printf("%.*s\n", (int)GRN_TEXT_LEN(&buffer), GRN_TEXT_VALUE(&buffer));
+
+   The query logger flags are printed like the following::
+
+     COMMAND|RESULT_CODE|DESTINATION|CACHE|SIZE|SCORE
+
+.. c:function:: void grn_p(grn_ctx *ctx, grn_obj *obj)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+   It prints inspected text.
+
+   :param ctx: The context object
+   :param obj: The inspect target object.
+
+   .. code-block:: c
+
+      grn_p(&context, &buffer, obj);
+
+   If obj is ``ShortText``, it prints like the following::
+
+     #<type ShortText size:4096 type:var_size>
+
+.. c:function:: void grn_p_geo_point(grn_ctx *ctx, grn_geo_point *point)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+   It prints inspected geo point text.
+
+   :param ctx: The context object
+   :param point: The inspect target object.
+
+   .. code-block:: c
+
+      grn_obj point;
+      int latitude = ((40 * 60 * 60) + (42 * 60) + 46) * 1000;
+      int longitude = ((-74 * 60 * 60) + (0 * 60) + 22) * 1000;
+      GRN_WGS84_GEO_POINT_INIT(&point, 0);
+      GRN_GEO_POINT_SET(&context, &point, latitude, longitude);
+      grn_p_geo_point(&context, (grn_geo_point*)&point);
+
+   If ``point`` indicates New York City, it prints like the following::
+
+     [(524290,18) ((0, 8, 44, 290),(0, 0, 0, 18)) [00000000 00000000 00000000 10000000 00000000 00000000 00000001 00001100]]
+
+.. c:function:: void grn_p_ii_values(grn_ctx *ctx, grn_obj *obj)
+
+   .. versionadded:: 4.0.8
+
+   Inspect specified target ``obj`` object.
+   It prints inspected index values.
+
+   :param ctx: The context object
+   :param obj: The inspect target object.
+
+   .. code-block:: c
+
+      grn_p_ii_values(&context, obj);
+
+   If ``obj`` is an index column, it prints like the following::
+
+     [
+       #<"!"
+         elements:[
+           {status:available, rid:1, sid:1, pos:0, tf:1, weight:0, rest:1},
+           {status:available, rid:2, sid:1, pos:0, tf:1, weight:0, rest:1}
+         ]
+       >,
+       ...
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20190425/75301763/attachment-0001.html>


More information about the Groonga-commit mailing list
Back to archive index