Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > mkmfライブラリ > Kernelモジュール > check_signedness (private)

instance method Kernel#check_signedness

check_signedness(type, headers = nil, opts = nil) -> "signed" | "unsigned" | nil[permalink][rdoc] [added by mkmf]
check_signedness(type, headers = nil, opts = nil) { ... } -> "signed" | "unsigned" | nil [added by mkmf]
Returns the signedness of the given +type+.  You may optionally
specify additional +headers+ to search in for the +type+.

If the +type+ is found and is a numeric type, a macro is passed as a
preprocessor constant to the compiler using the +type+ name, in
uppercase, prepended with 'SIGNEDNESS_OF_', followed by the +type+
name, followed by '=X' where 'X' is positive integer if the +type+ is
unsigned, or negative integer if the +type+ is signed.

For example, if size_t is defined as unsigned, then
check_signedness('size_t') would returned +1 and the
SIGNEDNESS_OF_SIZE_T=+1 preprocessor macro would be passed to the
compiler, and SIGNEDNESS_OF_INT=-1 if check_signedness('int') is
done.