全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 ページ
公開メンバ関数 | 全メンバ一覧
field クラス

フィールドアクセスクラス [詳解]

#include <field.h>

公開メンバ関数

 field (const field &r)
 
const char * a_str () const
 
const _TCHAR * c_str () const
 
int comp (const field &r, char logType=CMPLOGICAL_VAR_COMP_ALL) const
 
double d () const
 
const fielddefdef () const
 
float f () const
 
void * getBin (uint_td &size) const
 
bitset getBits () const
 
int i () const
 
short i16 () const
 
__int64 i64 () const
 
int i8 () const
 
bool isNull () const
 
unsigned short len () const
 
bool operator!= (const _TCHAR *p) const
 
bool operator!= (int v) const
 
bool operator!= (short v) const
 
bool operator!= (__int64 v) const
 
bool operator!= (float v) const
 
bool operator!= (double v) const
 
fieldoperator= (const field &r)
 
template<class T >
fieldoperator= (const T c)
 
bool operator== (const _TCHAR *p) const
 
bool operator== (int v) const
 
bool operator== (short v) const
 
bool operator== (__int64 v) const
 
bool operator== (float v) const
 
bool operator== (double v) const
 
void * ptr () const
 
void setBin (const void *data, uint_td size)
 
void setNull (bool v)
 
unsigned char type () const
 

詳解

フィールドアクセスクラス

フィールドの値の設定・取得は、フィールドの型とその型が異なる場合は可能な限り変換を行います。 フィールドに値をセットすると、セットした値に関わらず内部で自動的に setNull(false) が呼び出しそのフィールドを非NULLにマークします。 但し、(const char*)NULL (const wchar*)NULL または (const void*)NULL の無効な値をセットした場合に限り、 setNull(true)を呼び出しそのフィールドをNULLとしてマークします。

構築子と解体子

field ( const field r)
inline

コピーコンストラクタ。

関数詳解

const char * a_str ( ) const
inline

フィールドの値をマルチバイト文字列で取得します。

const _TCHAR * c_str ( ) const
inline

フィールドの値を_TCHAR型の文字列で取得します。

int comp ( const field r,
char  logType = CMPLOGICAL_VAR_COMP_ALL 
) const

引数rで与えられたフィールドの値とこのフィールドの値を比較します。
このフィールドの値の方が小さい場合は負の値を返し、大きい場合は正の値、同じ場合はゼロを返します。
logTypeには以下の比較オプションを指定できます。

  • CMPLOGICAL_CASEINSENSITIVE 128 文字列の場合に大文字小文字を区別しません
  • CMPLOGICAL_VAR_COMP_ALL 16   可変長文字列の比較の際、完全な一致で比較します。デフォルトではこれが指定されます。 これを指定しない場合は、短い文字列の長さのみ比較(先頭一致)し結果を返します。
double d ( ) const
inline

フィールドの値をdoubleで取得します。

fielddef * def ( ) const
inline

フィールドのフィールド定義 ( fielddef )を返します。

float f ( ) const
inline

フィールドの値をfloatで取得します。

void * getBin ( uint_td &  size) const
inline

データバッファのこのフィールドの内容の先頭アドレスとサイズを返します。

引数
[out]sizeデータのサイズを返します。
戻り値
データバッファーのフィールドの値の先頭アドレスをvoid*型で返します。
注釈
この関数が返すアドレスは、データの値そのままのものです。文字列型のフィールドであっても 他のgetFV関数のように文字コード変換は行われません。
bitset getBits ( ) const
inline

フィールドの値を読み取ってその値で初期化した bitset を返します。

int i ( ) const
inline

フィールドの値をint32で取得します。

int i16 ( ) const
inline

フィールドの値をint16で取得します。

__int64 i64 ( ) const
inline

フィールドの値をint16で取得します。

int i8 ( ) const
inline

フィールドの値を8ビットint型で返します。

bool isNull ( ) const

フィールドの値がNULLかどうかを返します。
NULLの扱いはこのクラスの概要を参照してください。

unsigned short len ( ) const
inline

フィールドの最大長を返します。 この長さは fielddef::len と同じ値を返します。

bool operator!= ( const _TCHAR *  p) const
inline

フィールドの値をpで指定した文字列と比較して異なるかどうかを返します。 異なる場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでtrueを返します。

bool operator!= ( int  v) const
inline

フィールドの値をvで指定したint値と比較して異なるかどうかを返します。 異なる場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでtrueを返します。

bool operator!= ( short  v) const
inline

フィールドの値をvで指定したshort値と比較して異なるかどうかを返します。 異なる場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでtrueを返します。

bool operator!= ( __int64  v) const
inline

フィールドの値をvで指定したint64値と比較して異なるかどうかを返します。 異なる場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでtrueを返します。

bool operator!= ( float  v) const
inline

フィールドの値をvで指定したfloat値と比較して異なるかどうかを返します。 異なる場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでtrueを返します。

bool operator!= ( double  v) const
inline

フィールドの値をvで指定したdouble値と比較して異なるかどうかを返します。 異なる場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでtrueを返します。

field & operator= ( const field r)
inline

引数rで与えられたフィールドの値をコピーします。

field& operator= ( const T  c)
inline
bool operator== ( const _TCHAR *  p) const
inline

フィールドの値をpで指定した文字列と比較して同じかどうかを返します。 同じ場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでfalseを返します。

bool operator== ( int  v) const
inline

フィールドの値をvで指定したint値と比較して同じかどうかを返します。 同じ場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでfalseを返します。

bool operator== ( short  v) const
inline

フィールドの値をvで指定したshort値と比較して同じかどうかを返します。 同じ場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでfalseを返します。

bool operator== ( __int64  v) const
inline

フィールドの値をvで指定したint64値と比較して同じかどうかを返します。 同じ場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでfalseを返します。

bool operator== ( float  v) const
inline

フィールドの値をvで指定したfloat値と比較して同じかどうかを返します。 同じ場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでfalseを返します。

bool operator== ( double  v) const
inline

フィールドの値をvで指定したdouble値と比較して同じかどうかを返します。 同じ場合はtrueを返します。
比較は最初にこのフィールドがNULLかどうかがテストされます。NULLの場合そこでfalseを返します。

void * ptr ( ) const

フィールドの値を保持するメモリの先頭アドレスを返します。 このフィールドの値は、ptr() + pos の位置に格納されています。

void setBin ( const void *  data,
uint_td  size 
)
inline

フィールドに、dataで指定された開始アドレスからsizeで指定された長さをフィールドの型に合わせて書き込みます。 ft_blobとft_text型の場合、バッファに書き込まれるのはdataのポインタのみで内容はコピーはされません。 レコードのinsertやupdateが完了するまで dataポインターで示したメモリは有効でなければなりません。
NULLの扱いはこのクラスの概要を参照してください。

注釈
この関数は、dataで指定したメモリの内容がそのまま保存されます。 フィールド型が文字列場合であっても、他のsetFV関数のように文字コード変換は行われません。
void setNull ( bool  v)

フィールドの値がNULLかどうかを指定します。 trueを指定するとこのフィールドはNULLであるとマークします。
NULLの扱いはこのクラスの概要を参照してください。

unsigned char type ( ) const
inline

フィールドの型タイプを返します。 このタイプは fielddef::type と同じ値を返します。

Transactd SDK 2018年07月31日(火) 19時40分34秒 doxygen