package com_maroontress_libcgi_db

class BoxKit

#define com_maroontress_libcgi_db_BoxKit_IMPORT
#include <com/maroontress/libcgi/db/BoxKit.h>
ツリーを変更するためのボックスキットです。

ボックスキットは変数を複数保持することができます。それぞれの変数には、整数または文字列のどちらか一方を設定できます。


Struct Summary

struct BoxKit
          ボックスキットの実体となる構造体です。

Method Summary

 struct BoxKit * BoxKit_create(struct Treetree, const char * key)
          ボックスキットを生成します。
 int BoxKit_load(struct BoxKitkit, const void * data, size_t size)
          シリアライズされたデータをロードします。
 int BoxKit_setInt(struct BoxKitkit, const char * name, int value)
          変数に整数を設定します。
 int BoxKit_getInt(struct BoxKitkit, const char * name, (out) int * value)
          変数に設定されている整数を取得します。
 int BoxKit_setString(struct BoxKitkit, const char * name, const char * value)
          変数に文字列を設定します。
 int BoxKit_createString(struct BoxKitkit, const char * name, (out) char ** value)
          変数に設定されている文字列のコピーを生成します。
 int BoxKit_createXMLEscapedString(struct BoxKitkit, const char * name, (out) char ** value)
          変数に設定されている文字列のコピーを生成します。生成される文字列はXML向けにエスケープされています。
 int BoxKit_delete(struct BoxKitkit, const char * name)
          変数を削除します。
 char * BoxKit_getKey(struct BoxKitkit)
          キーを取得します。
 void BoxKit_purge(struct BoxKitkit)
          ボックスキットを解放します。
 int BoxKit_close(struct BoxKitkit)
          ツリーを更新してボックスキットを解放します。

Struct Detail

struct BoxKit

ボックスキットの実体となる構造体です。

型の詳細は隠蔽されています。


Method Detail

BoxKit_create

struct BoxKit * BoxKit_create( struct Treetree,
const char * key)
ボックスキットを生成します。

keyをキーとする空のボックスキットを生成します。

戻り値が参照するオブジェクトはBoxKit_purge()またはBoxKit_close()で解放しなければなりません。

生成できない場合はNULLを返します。

このメソッドは実装上の都合で公開されているので、アプリケーションは呼び出さないでください。

Parameters:
tree - ツリー
key - キー
Returns:
ボックスキット、またはNULL

BoxKit_load

int BoxKit_load( struct BoxKitkit,
const void * data,
size_t size)
シリアライズされたデータをロードします。

このメソッドは実装上の都合で公開されているので、アプリケーションは呼び出さないでください。

Parameters:
kit - ボックスキット
data - シリアライズされたデータ
size - dataのサイズ
Returns:
成功した場合は0、そうでなければ−1

BoxKit_setInt

int BoxKit_setInt( struct BoxKitkit,
const char * name,
int value)
変数に整数を設定します。
Parameters:
kit - ボックスキット
name - 変数名
value - 整数
Returns:
成功した場合は0、そうでなければ−1

BoxKit_getInt

int BoxKit_getInt( struct BoxKitkit,
const char * name,
(out) int * value)
変数に設定されている整数を取得します。
Parameters:
kit - ボックスキット
name - 変数名
value - 整数の格納先
Returns:
成功した場合は0、そうでなければ−1

BoxKit_setString

int BoxKit_setString( struct BoxKitkit,
const char * name,
const char * value)
変数に文字列を設定します。
Parameters:
kit - ボックスキット
name - 変数名
value - 文字列
Returns:
成功した場合は0、そうでなければ−1

BoxKit_createString

int BoxKit_createString( struct BoxKitkit,
const char * name,
(out) char ** value)
変数に設定されている文字列のコピーを生成します。

成功した場合、*valueが参照するオブジェクトはfree(3)で解放しなければなりません。

Parameters:
kit - ボックスキット
name - 変数名
value - 生成した文字列の参照の格納先
Returns:
成功した場合は0、そうでなければ−1

BoxKit_createXMLEscapedString

int BoxKit_createXMLEscapedString( struct BoxKitkit,
const char * name,
(out) char ** value)
変数に設定されている文字列のコピーを生成します。生成される文字列はXML向けにエスケープされています。

成功した場合、*valueが参照するオブジェクトはfree(3)で解放しなければなりません。

See:
com_maroontress_libcgi_db_XML_createEscapedString()
Parameters:
kit - ボックスキット
name - 変数名
value - 生成した文字列の参照の格納先
Returns:
成功した場合は0、そうでなければ−1

BoxKit_delete

int BoxKit_delete( struct BoxKitkit,
const char * name)
変数を削除します。

変数名がnameの変数を削除します。

Parameters:
kit - ボックスキット
name - 変数名
Returns:
成功した場合は0、そうでなければ−1

BoxKit_getKey

char * BoxKit_getKey( struct BoxKitkit)
キーを取得します。

戻り値が参照するオブジェクトはkitを解放するまで有効です。戻り値が参照するオブジェクトを変更、修正してはなりません。

Parameters:
kit - ボックスキット
Returns:
キー

BoxKit_purge

void BoxKit_purge( struct BoxKitkit)
ボックスキットを解放します。

kitへの変更は捨てられ、ツリーには反映されません。

呼び出し後はkitが参照するオブジェクトを参照してはなりません。

Parameters:
kit - ボックスキット

BoxKit_close

int BoxKit_close( struct BoxKitkit)
ツリーを更新してボックスキットを解放します。

kitへの変更はツリーにコミットされます。

呼び出し後はkitが参照するオブジェクトを参照してはなりません。

Parameters:
kit - ボックスキット
Returns:
成功した場合は0、そうでなければ−1