Module: Fiddle::PackInfo
Do not use. This module is for internal use only.
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Included In:
| |
Defined in: | ext/fiddle/lib/fiddle/pack.rb |
Constant Summary
-
ALIGN_MAP =
# File 'ext/fiddle/lib/fiddle/pack.rb', line 6{ TYPE_VOIDP => ALIGN_VOIDP, TYPE_CHAR => ALIGN_CHAR, TYPE_SHORT => ALIGN_SHORT, TYPE_INT => ALIGN_INT, TYPE_LONG => ALIGN_LONG, TYPE_FLOAT => ALIGN_FLOAT, TYPE_DOUBLE => ALIGN_DOUBLE, TYPE_UCHAR => ALIGN_CHAR, TYPE_USHORT => ALIGN_SHORT, TYPE_UINT => ALIGN_INT, TYPE_ULONG => ALIGN_LONG, TYPE_BOOL => ALIGN_BOOL, }
-
PACK_MAP =
# File 'ext/fiddle/lib/fiddle/pack.rb', line 21{ TYPE_VOIDP => "L!", TYPE_CHAR => "c", TYPE_SHORT => "s!", TYPE_INT => "i!", TYPE_LONG => "l!", TYPE_FLOAT => "f", TYPE_DOUBLE => "d", TYPE_UCHAR => "C", TYPE_USHORT => "S!", TYPE_UINT => "I!", TYPE_ULONG => "L!", }
-
SIZE_MAP =
# File 'ext/fiddle/lib/fiddle/pack.rb', line 45{ TYPE_VOIDP => SIZEOF_VOIDP, TYPE_CHAR => SIZEOF_CHAR, TYPE_SHORT => SIZEOF_SHORT, TYPE_INT => SIZEOF_INT, TYPE_LONG => SIZEOF_LONG, TYPE_FLOAT => SIZEOF_FLOAT, TYPE_DOUBLE => SIZEOF_DOUBLE, TYPE_UCHAR => SIZEOF_CHAR, TYPE_USHORT => SIZEOF_SHORT, TYPE_UINT => SIZEOF_INT, TYPE_ULONG => SIZEOF_LONG, TYPE_BOOL => SIZEOF_BOOL, }
Class Method Summary
- .align(addr, align) mod_func
Class Method Details
.align(addr, align) (mod_func)
[ GitHub ]# File 'ext/fiddle/lib/fiddle/pack.rb', line 67
def align(addr, align) d = addr % align if( d == 0 ) addr else addr + (align - d) end end