UNO Type Mappings

UNO は値の独自の型を持っています。ほかの言語とやりとりする場合にはその相互に変換する必要があります。それらをまとめたのが以下の表です。

TypeMappings

UNO Type OOo Basic Python Java C++ Description
void internal type (None) void void 空の型でメソッドの返り値または any でのみ使われます
boolean Boolean bool boolean sal_Bool true 又は false
byte Integer long byte sal_Int8 符号付き 8-bit 整数値型 (−128 〜 127)
short Integer long short sal_Int16 符号付き 16-bit 整数値型 (−32768 〜 32767)
unsigned short internal type long short sal_uInt16 符号なし 16-bit 整数値型 (deprecated)
long Long long int sal_Int32 符号付き 32-bit 整数値型 (−2147483648 〜 2147483647)
unsigned long internal type long int sal_uInt32 符号なし 32-bit 整数値型 (deprecated)
hyper internal type long long sal_Int64 符号付き 64-bit 整数値型 (−9223372036854775808 〜 9223372036854775807)
unsigned hyper internal type long long sal_uInt64 符号なし 64-bit 整数値型 (deprecated)
float Single float float float IEC 60559 単精度浮動小数点値型
double Double float double double IEC 60559 倍精度浮動小数点値型
char internal type uno.Char char sal_Unicode ユニコード一文字 (より正確には: UTF-16 文字コードでの一文字)
string String unicode java.lang.
String
rtl::OUString ユニコード文字列 (より正確にはユニコードスカラー)
type css.reflection.
XIdlClass
uno.Type css.uno.
Type
css::uno::
Type
全ての UNO のタイプを示す抽象型
any Variant (uno.Any) java.lang.
Object/
css.uno.Any
css::
uno::Any
全ての型を表現できる特殊な型

特殊な型

void

空。

type

値の型を示す型。バインディングの実装によって取得できる情報が大きく異なるため取り扱いに注意が必要です。

any

UNO の全ての型の値を入れることができる型です。言語のバインディング実装によりますが基本的に any に対応する値は自分で保持している値の型を知っています。

unsigned value

符号なしの値は定義されていますが、UNO とほかの言語でやりとりする場合にその言語に符号なしの値がない場合があります。それが考慮されて符号なしの型の利用は非推奨となっています。