rdoc update.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2010-02-25 17:27:56 +00:00
parent e599c936d8
commit b1196bb3d8

277
pack.c
View File

@ -307,50 +307,68 @@ static unsigned long utf8_to_uv(const char*,long*);
* *
* Directives for +pack+. * Directives for +pack+.
* *
* Directive Meaning * Integer | Array |
* --------------------------------------------------------------- * Directive | Element | Meaning
* @ | Moves to absolute position * ------------------------------------------------------------------------
* A | arbitrary binary string (space padded, count is width) * C | Integer | 8-bit unsigned integer (unsigned char)
* a | arbitrary binary string (null padded, count is width) * S | Integer | 16-bit unsigned integer, native endian (uint16_t)
* B | Bit string (descending bit order) * L | Integer | 32-bit unsigned integer, native endian (uint32_t)
* b | Bit string (ascending bit order) * Q | Integer | 64-bit unsigned integer, native endian (uint64_t)
* C | 8-bit unsigned byte (unsigned char) * | |
* c | 8-bit signed byte (char) * c | Integer | 8-bit signed integer (char)
* D, d | Double-precision float, native format * s | Integer | 16-bit signed integer, native endian (int16_t)
* E | Double-precision float, little-endian byte order * l | Integer | 32-bit signed integer, native endian (int32_t)
* e | Single-precision float, little-endian byte order * q | Integer | 64-bit signed integer, native endian (int64_t)
* F, f | Single-precision float, native format * | |
* G | Double-precision float, network (big-endian) byte order * S_ | Integer | unsigned short, native endian
* g | Single-precision float, network (big-endian) byte order * I, I_ | Integer | unsigned int, native endian
* H | Hex string (high nibble first) * L_ | Integer | unsigned long, native endian
* h | Hex string (low nibble first) * | |
* I | unsigned int, native endian * s_ | Integer | signed short, native endian
* i | signed int, native endian * i, i_ | Integer | signed int, native endian
* L | 32-bit unsigned integer (uint32_t) * l_ | Integer | signed long, native endian
* l | 32-bit signed integer (int32_t) * | |
* L_ | unsigned long, native endian * n | Integer | 16-bit unsigned integer, network (big-endian) byte order
* l_ | signed long, native endian * N | Integer | 32-bit unsigned integer, network (big-endian) byte order
* M | Quoted printable, MIME encoding (see RFC2045) * v | Integer | 16-bit unsigned integer, VAX (little-endian) byte order
* m | Base64 encoded string (see RFC 2045, count is width) * V | Integer | 32-bit unsigned integer, VAX (little-endian) byte order
* | (if count is 0, no line feed are added, see RFC 4648) * | |
* N | 32-bit unsigned integer, network (big-endian) byte order * U | Integer | UTF-8 character
* n | 16-bit unsigned integer, network (big-endian) byte order * w | Integer | BER-compressed integer
* P | Pointer to a structure (fixed-length string) *
* p | Pointer to a null-terminated string * Float | |
* Q | 64-bit unsigned integer (uint64_t) * Directive | | Meaning
* q | 64-bit signed integer (int64_t) * ------------------------------------------------------------------------
* S | 16-bit unsigned integer (uint16_t) * D, d | Float | Double-precision float, native format
* s | 16-bit signed integer (int16_t) * F, f | Float | Single-precision float, native format
* S_ | unsigned short, native endian * E | Float | Double-precision float, little-endian byte order
* s_ | signed short, native endian * e | Float | Single-precision float, little-endian byte order
* U | UTF-8 * G | Float | Double-precision float, network (big-endian) byte order
* u | UU-encoded string * g | Float | Single-precision float, network (big-endian) byte order
* V | 32-bit unsigned integer, little-endian byte order *
* v | 16-bit unsigned integer, little-endian byte order * String | |
* w | BER-compressed integer * Directive | | Meaning
* X | Back up a byte * ------------------------------------------------------------------------
* x | Null byte * A | String | arbitrary binary string (space padded, count is width)
* Z | Same as ``a'', except that null is added with * * a | String | arbitrary binary string (null padded, count is width)
* Z | String | Same as ``a'', except that null is added with *
* B | String | Bit string (MSB first)
* b | String | Bit string (LSB first)
* H | String | Hex string (high nibble first)
* h | String | Hex string (low nibble first)
* u | String | UU-encoded string
* M | String | Quoted printable, MIME encoding (see RFC2045)
* m | String | Base64 encoded string (see RFC 2045, count is width)
* | | (if count is 0, no line feed are added, see RFC 4648)
* P | String | Pointer to a structure (fixed-length string)
* p | String | Pointer to a null-terminated string
*
* Misc. | |
* Directive | | Meaning
* ------------------------------------------------------------------------
* @ | --- | Moves to absolute position
* X | --- | Back up a byte
* x | --- | Null byte
*/ */
static VALUE static VALUE
@ -1170,125 +1188,68 @@ infected_str_new(const char *ptr, long len, VALUE str)
* This table summarizes the various formats and the Ruby classes * This table summarizes the various formats and the Ruby classes
* returned by each. * returned by each.
* *
* Format | Returns | Function * Integer | |
* -------+---------+----------------------------------------- * Directive | Returns | Meaning
* A | String | arbitrary binary string with trailing * --------------------------------------------------------------
* | | nulls and ASCII spaces removed * C | Integer | 8-bit unsigned integer (unsigned char)
* -------+---------+----------------------------------------- * S | Integer | 16-bit unsigned integer, native endian (uint16_t)
* L | Integer | 32-bit unsigned integer, native endian (uint32_t)
* Q | Integer | 64-bit unsigned integer, native endian (uint64_t)
* | |
* c | Integer | 8-bit signed integer (char)
* s | Integer | 16-bit signed integer, native endian (int16_t)
* l | Integer | 32-bit signed integer, native endian (int32_t)
* q | Integer | 64-bit signed integer, native endian (int64_t)
* | |
* S_ | Integer | unsigned short, native endian
* I, I_ | Integer | unsigned int, native endian
* L_ | Integer | unsigned long, native endian
* | |
* s_ | Integer | signed short, native endian
* i, i_ | Integer | signed int, native endian
* l_ | Integer | signed long, native endian
* | |
* n | Integer | 16-bit unsigned integer, network (big-endian) byte order
* N | Integer | 32-bit unsigned integer, network (big-endian) byte order
* v | Integer | 16-bit unsigned integer, VAX (little-endian) byte order
* V | Integer | 32-bit unsigned integer, VAX (little-endian) byte order
* | |
* U | Integer | UTF-8 character
* w | Integer | BER-compressed integer (see Array.pack)
*
* Float | |
* Directive | Returns | Meaning
* --------------------------------------------------------------
* d, D | Float | Double-precision float, native format
* f, F | Float | Single-precision float, native format
* E | Float | Double-precision float, little-endian byte order
* e | Float | Single-precision float, little-endian byte order
* G | Float | Double-precision float, network (big-endian) byte order
* g | Float | Single-precision float, network (big-endian) byte order
*
* String | |
* Directive | Returns | Meaning
* --------------------------------------------------------------
* A | String | arbitrary binary string (remove trailing nulls and ASCII spaces)
* a | String | arbitrary binary string * a | String | arbitrary binary string
* -------+---------+----------------------------------------- * Z | String | null-terminated string
* B | String | extract bits from each byte (msb first) * B | String | bit string (MSB first)
* -------+---------+----------------------------------------- * b | String | bit string (LSB first)
* b | String | extract bits from each byte (lsb first) * H | String | Hex string (high nibble first)
* -------+---------+----------------------------------------- * h | String | Hex string (low nibble first)
* C | Fixnum | extract a byte (C unsigned char) as an * u | String | UU-encoded string
* | | 8-bit unsigned integer * M | String | quoted-printable, MIME encoding (see RFC2045)
* -------+---------+-----------------------------------------
* c | Fixnum | extract a byte (C char) as an 8-bit
* | | integer
* -------+---------+-----------------------------------------
* d,D | Float | treat sizeof(double) bytes as
* | | a native double
* -------+---------+-----------------------------------------
* E | Float | treat sizeof(double) bytes as
* | | a double in little-endian byte order
* -------+---------+-----------------------------------------
* e | Float | treat sizeof(float) bytes as
* | | a float in little-endian byte order
* -------+---------+-----------------------------------------
* f,F | Float | treat sizeof(float) bytes as
* | | a native float
* -------+---------+-----------------------------------------
* G | Float | treat sizeof(double) bytes as
* | | a double in network byte order
* -------+---------+-----------------------------------------
* g | Float | treat sizeof(float) bytes as a
* | | float in network byte order
* -------+---------+-----------------------------------------
* H | String | extract hex nibbles from each byte
* | | (most significant first)
* -------+---------+-----------------------------------------
* h | String | extract hex nibbles from each byte
* | | (least significant first)
* -------+---------+-----------------------------------------
* I | Integer | treat sizeof(int) successive bytes as
* | | an unsigned native integer
* -------+---------+-----------------------------------------
* i | Integer | treat sizeof(int) successive bytes as
* | | a signed native integer
* -------+---------+-----------------------------------------
* L | Integer | treat 4 successive bytes as a 32-bit
* | | unsigned native integer
* -------+---------+-----------------------------------------
* l | Integer | treat 4 successive bytes as a 32-bit
* | | signed native integer
* -------+---------+-----------------------------------------
* L_ | Integer | treat sizeof(unsigned long) successive
* | | bytes as an unsigned native long integer
* -------+---------+-----------------------------------------
* l_ | Integer | treat sizeof(long) successive bytes as
* | | a signed native long integer
* -------+---------+-----------------------------------------
* M | String | quoted-printable
* -------+---------+-----------------------------------------
* m | String | base64-encoded (RFC 2045) (default) * m | String | base64-encoded (RFC 2045) (default)
* | | base64-encoded (RFC 4648) if followed by 0 * | | base64-encoded (RFC 4648) if followed by 0
* -------+---------+----------------------------------------- * P | String | Pointer to a structure (fixed-length string)
* N | Integer | treat 4 bytes as a 32-bit unsigned * p | String | Pointer to a null-terminated string
* | | integer in network byte order (big-endian) *
* -------+---------+----------------------------------------- * Misc. | |
* n | Fixnum | treat 2 bytes as a 16-bit unsigned * Directive | Returns | Meaning
* | | integer in network byte order (big-endian) * --------------------------------------------------------------
* -------+---------+----------------------------------------- * @ | --- | skip to the offset given by the length argument
* P | String | treat sizeof(char *) bytes as a
* | | pointer, and return the length bytes
* | | from the referenced location
* -------+---------+-----------------------------------------
* p | String | treat sizeof(char *) bytes as a
* | | pointer to a null-terminated string
* -------+---------+-----------------------------------------
* Q | Integer | treat 8 bytes as a 64-bit unsigned
* | | native integer
* -------+---------+-----------------------------------------
* q | Integer | treat 8 bytes as a 64-bit signed
* | | native integer
* -------+---------+-----------------------------------------
* S | Fixnum | treat 2 successive bytes as a 16-bit
* | | unsigned integer in native byte order
* -------+---------+-----------------------------------------
* s | Fixnum | treat 2 successive bytes as a 16-bit
* | | signed integer in native byte order
* -------+---------+-----------------------------------------
* S_ | Fixnum | treat sizeof(unsigned short) successive
* | | bytes as an unsigned short integer in
* | | native byte order
* -------+---------+-----------------------------------------
* s_ | Fixnum | Treat sizeof(short) successive bytes as
* | | a signed short integer in native byte
* | | order
* -------+---------+-----------------------------------------
* U | Integer | UTF-8 characters as unsigned integers
* -------+---------+-----------------------------------------
* u | String | UU-encoded
* -------+---------+-----------------------------------------
* V | Fixnum | treat four bytes as a 32-bit unsigned
* | | integer in little-endian byte order
* -------+---------+-----------------------------------------
* v | Fixnum | treat two bytes as a 16-bit unsigned
* | | integer in little-endian byte order
* -------+---------+-----------------------------------------
* w | Integer | BER-compressed integer (see Array.pack)
* -------+---------+-----------------------------------------
* X | --- | skip backward one byte * X | --- | skip backward one byte
* -------+---------+-----------------------------------------
* x | --- | skip forward one byte * x | --- | skip forward one byte
* -------+---------+-----------------------------------------
* Z | String | with trailing nulls removed
* | | upto first null with *
* -------+---------+-----------------------------------------
* @ | --- | skip to the offset given by the
* | | length argument
* -------+---------+-----------------------------------------
*/ */
static VALUE static VALUE