[前][次][番号順一覧][スレッド一覧]

ruby-changes:44415

From: akr <ko1@a...>
Date: Tue, 25 Oct 2016 12:48:29 +0900 (JST)
Subject: [ruby-changes:44415] akr:r56488 (trunk): [DOC] table format refined.

akr	2016-10-25 12:48:23 +0900 (Tue, 25 Oct 2016)

  New Revision: 56488

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=56488

  Log:
    [DOC] table format refined.

  Modified files:
    trunk/pack.c
Index: pack.c
===================================================================
--- pack.c	(revision 56487)
+++ pack.c	(revision 56488)
@@ -174,100 +174,94 @@ rb_str_associated(VALUE str) https://github.com/ruby/ruby/blob/trunk/pack.c#L174
  *
  *  Directives for +pack+.
  *
- *   Integer      | Array   |
- *   Directive    | Element | Meaning
- *   ---------------------------------------------------------------------------
- *      C         | Integer | 8-bit unsigned (unsigned char)
- *      S         | Integer | 16-bit unsigned, native endian (uint16_t)
- *      L         | Integer | 32-bit unsigned, native endian (uint32_t)
- *      Q         | Integer | 64-bit unsigned, native endian (uint64_t)
- *      J         | Integer | pointer width unsigned, native endian (uintptr_t)
- *                |         | (J is available since Ruby 2.3.)
- *                |         |
- *      c         | Integer | 8-bit signed (signed char)
- *      s         | Integer | 16-bit signed, native endian (int16_t)
- *      l         | Integer | 32-bit signed, native endian (int32_t)
- *      q         | Integer | 64-bit signed, native endian (int64_t)
- *      j         | Integer | pointer width signed, native endian (intptr_t)
- *                |         | (j is available since Ruby 2.3.)
- *                |         |
- *      S_, S!    | Integer | unsigned short, native endian
- *      I, I_, I! | Integer | unsigned int, native endian
- *      L_, L!    | Integer | unsigned long, native endian
- *      Q_, Q!    | Integer | unsigned long long, native endian (ArgumentError
- *                |         | if the platform has no long long type.)
- *                |         | (Q_ and Q! is available since Ruby 2.1.)
- *      J!        | Integer | uintptr_t, native endian (same with J)
- *                |         | (J! is available since Ruby 2.3.)
- *                |         |
- *      s_, s!    | Integer | signed short, native endian
- *      i, i_, i! | Integer | signed int, native endian
- *      l_, l!    | Integer | signed long, native endian
- *      q_, q!    | Integer | signed long long, native endian (ArgumentError
- *                |         | if the platform has no long long type.)
- *                |         | (q_ and q! is available since Ruby 2.1.)
- *      j!        | Integer | intptr_t, native endian (same with j)
- *                |         | (j! is available since Ruby 2.3.)
- *                |         |
- *      S> L> Q>  | Integer | same as the directives without ">" except
- *      J> s> l>  |         | big endian
- *      q> j>     |         | (available since Ruby 1.9.3)
- *      S!> I!>   |         | "S>" is same as "n"
- *      L!> Q!>   |         | "L>" is same as "N"
- *      J!> s!>   |         |
- *      i!> l!>   |         |
- *      q!> j!>   |         |
- *                |         |
- *      S< L< Q<  | Integer | same as the directives without "<" except
- *      J< s< l<  |         | little endian
- *      q< j<     |         | (available since Ruby 1.9.3)
- *      S!< I!<   |         | "S<" is same as "v"
- *      L!< Q!<   |         | "L<" is same as "V"
- *      J!< s!<   |         |
- *      i!< l!<   |         |
- *      q!< j!<   |         |
- *                |         |
- *      n         | Integer | 16-bit unsigned, network (big-endian) byte order
- *      N         | Integer | 32-bit unsigned, network (big-endian) byte order
- *      v         | Integer | 16-bit unsigned, VAX (little-endian) byte order
- *      V         | Integer | 32-bit unsigned, VAX (little-endian) byte order
- *                |         |
- *      U         | Integer | UTF-8 character
- *      w         | Integer | BER-compressed integer
+ *   Integer       | Array   |
+ *   Directive     | Element | Meaning
+ *   ----------------------------------------------------------------------------
+ *   C             | Integer | 8-bit unsigned (unsigned char)
+ *   S             | Integer | 16-bit unsigned, native endian (uint16_t)
+ *   L             | Integer | 32-bit unsigned, native endian (uint32_t)
+ *   Q             | Integer | 64-bit unsigned, native endian (uint64_t)
+ *   J             | Integer | pointer width unsigned, native endian (uintptr_t)
+ *                 |         | (J is available since Ruby 2.3.)
+ *                 |         |
+ *   c             | Integer | 8-bit signed (signed char)
+ *   s             | Integer | 16-bit signed, native endian (int16_t)
+ *   l             | Integer | 32-bit signed, native endian (int32_t)
+ *   q             | Integer | 64-bit signed, native endian (int64_t)
+ *   j             | Integer | pointer width signed, native endian (intptr_t)
+ *                 |         | (j is available since Ruby 2.3.)
+ *                 |         |
+ *   S_ S!         | Integer | unsigned short, native endian
+ *   I I_ I!       | Integer | unsigned int, native endian
+ *   L_ L!         | Integer | unsigned long, native endian
+ *   Q_ Q!         | Integer | unsigned long long, native endian (ArgumentError
+ *                 |         | if the platform has no long long type.)
+ *                 |         | (Q_ and Q! is available since Ruby 2.1.)
+ *   J!            | Integer | uintptr_t, native endian (same with J)
+ *                 |         | (J! is available since Ruby 2.3.)
+ *                 |         |
+ *   s_ s!         | Integer | signed short, native endian
+ *   i i_ i!       | Integer | signed int, native endian
+ *   l_ l!         | Integer | signed long, native endian
+ *   q_ q!         | Integer | signed long long, native endian (ArgumentError
+ *                 |         | if the platform has no long long type.)
+ *                 |         | (q_ and q! is available since Ruby 2.1.)
+ *   j!            | Integer | intptr_t, native endian (same with j)
+ *                 |         | (j! is available since Ruby 2.3.)
+ *                 |         |
+ *   S> s> S!> s!> | Integer | same as the directives without ">" except
+ *   L> l> L!> l!> |         | big endian
+ *   I!> i!>       |         | (available since Ruby 1.9.3)
+ *   Q> q> Q!> q!> |         | "S>" is same as "n"
+ *   J> j> J!> j!> |         | "L>" is same as "N"
+ *                 |         |
+ *   S< s< S!< s!< | Integer | same as the directives without "<" except
+ *   L< l< L!< l!< |         | little endian
+ *   I!< i!<       |         | (available since Ruby 1.9.3)
+ *   Q< q< Q!< q!< |         | "S<" is same as "v"
+ *   J< j< J!< j!< |         | "L<" is same as "V"
+ *                 |         |
+ *   n             | Integer | 16-bit unsigned, network (big-endian) byte order
+ *   N             | Integer | 32-bit unsigned, network (big-endian) byte order
+ *   v             | Integer | 16-bit unsigned, VAX (little-endian) byte order
+ *   V             | Integer | 32-bit unsigned, VAX (little-endian) byte order
+ *                 |         |
+ *   U             | Integer | UTF-8 character
+ *   w             | Integer | BER-compressed integer
  *
- *   Float        |         |
- *   Directive    |         | Meaning
+ *   Float        | Array   |
+ *   Directive    | Element | Meaning
  *   ---------------------------------------------------------------------------
- *      D, d      | Float   | double-precision, native format
- *      F, f      | Float   | single-precision, native format
- *      E         | Float   | double-precision, little-endian byte order
- *      e         | Float   | single-precision, little-endian byte order
- *      G         | Float   | double-precision, network (big-endian) byte order
- *      g         | Float   | single-precision, network (big-endian) byte order
+ *   D d          | Float   | double-precision, native format
+ *   F f          | Float   | single-precision, native format
+ *   E            | Float   | double-precision, little-endian byte order
+ *   e            | Float   | single-precision, little-endian byte order
+ *   G            | Float   | double-precision, network (big-endian) byte order
+ *   g            | Float   | single-precision, network (big-endian) byte order
  *
- *   String       |         |
- *   Directive    |         | Meaning
+ *   String       | Array   |
+ *   Directive    | Element | Meaning
  *   ---------------------------------------------------------------------------
- *      A         | String  | arbitrary binary string (space padded, count is width)
- *      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)
+ *   A            | String  | arbitrary binary string (space padded, count is width)
+ *   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
+ *   P            | String  | pointer to a structure (fixed-length string)
+ *   p            | String  | pointer to a null-terminated string
  *
- *   Misc.        |         |
- *   Directive    |         | Meaning
+ *   Misc.        | Array   |
+ *   Directive    | Element | Meaning
  *   ---------------------------------------------------------------------------
- *      @         | ---     | moves to absolute position
- *      X         | ---     | back up a byte
- *      x         | ---     | null byte
+ *   @            | ---     | moves to absolute position
+ *   X            | ---     | back up a byte
+ *   x            | ---     | null byte
  */
 
 static VALUE
@@ -1059,98 +1053,94 @@ infected_str_new(const char *ptr, long l https://github.com/ruby/ruby/blob/trunk/pack.c#L1053
  *  This table summarizes the various formats and the Ruby classes
  *  returned by each.
  *
- *   Integer      |         |
- *   Directive    | Returns | Meaning
- *   -----------------------------------------------------------------
- *      C         | Integer | 8-bit unsigned (unsigned char)
- *      S         | Integer | 16-bit unsigned, native endian (uint16_t)
- *      L         | Integer | 32-bit unsigned, native endian (uint32_t)
- *      Q         | Integer | 64-bit unsigned, native endian (uint64_t)
- *      J         | Integer | pointer width unsigned, native endian (uintptr_t)
- *                |         | (J is available since Ruby 2.3.)
- *                |         |
- *      c         | Integer | 8-bit signed (signed char)
- *      s         | Integer | 16-bit signed, native endian (int16_t)
- *      l         | Integer | 32-bit signed, native endian (int32_t)
- *      q         | Integer | 64-bit signed, native endian (int64_t)
- *      j         | Integer | pointer width signed, native endian (intptr_t)
- *                |         | (j is available since Ruby 2.3.)
- *                |         |
- *      S_, S!    | Integer | unsigned short, native endian
- *      I, I_, I! | Integer | unsigned int, native endian
- *      L_, L!    | Integer | unsigned long, native endian
- *      Q_, Q!    | Integer | unsigned long long, native endian (ArgumentError
- *                |         | if the platform has no long long type.)
- *                |         | (Q_ and Q! is available since Ruby 2.1.)
- *      J!        | Integer | uintptr_t, native endian (same with J)
- *                |         | (J! is available since Ruby 2.3.)
- *                |         |
- *      s_, s!    | Integer | signed short, native endian
- *      i, i_, i! | Integer | signed int, native endian
- *      l_, l!    | Integer | signed long, native endian
- *      q_, q!    | Integer | signed long long, native endian (ArgumentError
- *                |         | if the platform has no long long type.)
- *                |         | (q_ and q! is available since Ruby 2.1.)
- *      j!        | Integer | intptr_t, native endian (same with j)
- *                |         | (j! is available since Ruby 2.3.)
- *                |         |
- *      S> L> Q>  | Integer | same as the directives without ">" except
- *      s> l> q>  |         | big endian
- *      S!> I!>   |         | (available since Ruby 1.9.3)
- *      L!> Q!>   |         | "S>" is same as "n"
- *      s!> i!>   |         | "L>" is same as "N"
- *      l!> q!>   |         |
- *      J> j> J!> j!>|         |
- *                |         |
- *      S< L< Q<  | Integer | same as the directives without "<" except
- *      s< l< q<  |         | little endian
- *      S!< I!<   |         | (available since Ruby 1.9.3)
- *      L!< Q!<   |         | "S<" is same as "v"
- *      s!< i!<   |         | "L<" is same as "V"
- *      l!< q!<   |         |
- *      J< j< J!< j!<|         |
- *                |         |
- *      n         | Integer | 16-bit unsigned, network (big-endian) byte order
- *      N         | Integer | 32-bit unsigned, network (big-endian) byte order
- *      v         | Integer | 16-bit unsigned, VAX (little-endian) byte order
- *      V         | Integer | 32-bit unsigned, VAX (little-endian) byte order
- *                |         |
- *      U         | Integer | UTF-8 character
- *      w         | Integer | BER-compressed integer (see Array.pack)
+ *   Integer       |         |
+ *   Directive     | Returns | Meaning
+ *   ------------------------------------------------------------------
+ *   C             | Integer | 8-bit unsigned (unsigned char)
+ *   S             | Integer | 16-bit unsigned, native endian (uint16_t)
+ *   L             | Integer | 32-bit unsigned, native endian (uint32_t)
+ *   Q             | Integer | 64-bit unsigned, native endian (uint64_t)
+ *   J             | Integer | pointer width unsigned, native endian (uintptr_t)
+ *                 |         | (J is available since Ruby 2.3.)
+ *                 |         |
+ *   c             | Integer | 8-bit signed (signed char)
+ *   s             | Integer | 16-bit signed, native endian (int16_t)
+ *   l             | Integer | 32-bit signed, native endian (int32_t)
+ *   q             | Integer | 64-bit signed, native endian (int64_t)
+ *   j             | Integer | pointer width signed, native endian (intptr_t)
+ *                 |         | (j is available since Ruby 2.3.)
+ *                 |         |
+ *   S_ S!         | Integer | unsigned short, native endian
+ *   I I_ I!       | Integer | unsigned int, native endian
+ *   L_ L!         | Integer | unsigned long, native endian
+ *   Q_ Q!         | Integer | unsigned long long, native endian (ArgumentError
+ *                 |         | if the platform has no long long type.)
+ *                 |         | (Q_ and Q! is available since Ruby 2.1.)
+ *   J!            | Integer | uintptr_t, native endian (same with J)
+ *                 |         | (J! is available since Ruby 2.3.)
+ *                 |         |
+ *   s_ s!         | Integer | signed short, native endian
+ *   i i_ i!       | Integer | signed int, native endian
+ *   l_ l!         | Integer | signed long, native endian
+ *   q_ q!         | Integer | signed long long, native endian (ArgumentError
+ *                 |         | if the platform has no long long type.)
+ *                 |         | (q_ and q! is available since Ruby 2.1.)
+ *   j!            | Integer | intptr_t, native endian (same with j)
+ *                 |         | (j! is available since Ruby 2.3.)
+ *                 |         |
+ *   S> s> S!> s!> | Integer | same as the directives without ">" except
+ *   L> l> L!> l!> |         | big endian
+ *   I!> i!>       |         | (available since Ruby 1.9.3)
+ *   Q> q> Q!> q!> |         | "S>" is same as "n"
+ *   J> j> J!> j!> |         | "L>" is same as "N"
+ *                 |         |
+ *   S< s< S!< s!< | Integer | same as the directives without "<" except
+ *   L< l< L!< l!< |         | little endian
+ *   I!< i!<       |         | (available since Ruby 1.9.3)
+ *   Q< q< Q!< q!< |         | "S<" is same as "v"
+ *   J< j< J!< j!< |         | "L<" is same as "V"
+ *                 |         |
+ *   n             | Integer | 16-bit unsigned, network (big-endian) byte order
+ *   N             | Integer | 32-bit unsigned, network (big-endian) byte order
+ *   v             | Integer | 16-bit unsigned, VAX (little-endian) byte order
+ *   V             | Integer | 32-bit unsigned, 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, native format
- *      F, f      | Float   | single-precision, native format
- *      E         | Float   | double-precision, little-endian byte order
- *      e         | Float   | single-precision, little-endian byte order
- *      G         | Float   | double-precision, network (big-endian) byte order
- *      g         | Float   | single-precision, network (big-endian) byte order
+ *   D d          | Float   | double-precision, native format
+ *   F f          | Float   | single-precision, native format
+ *   E            | Float   | double-precision, little-endian byte order
+ *   e            | Float   | single-precision, little-endian byte order
+ *   G            | Float   | double-precision, network (big-endian) byte order
+ *   g            | Float   | single-precision, 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
- *      Z         | String  | null-terminated string
- *      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 (RFC 2045) (default)
+ *   A            | String  | arbitrary binary string (remove trailing nulls and ASCII spaces)
+ *   a            | String  | arbitrary binary string
+ *   Z            | String  | null-terminated string
+ *   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 (RFC 2045) (default)
  *                |          (... truncated)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]