summaryrefslogtreecommitdiff
path: root/pack.rb
diff options
context:
space:
mode:
Diffstat (limited to 'pack.rb')
-rw-r--r--pack.rb24
1 files changed, 14 insertions, 10 deletions
diff --git a/pack.rb b/pack.rb
index e70c6c7dc8..a8b9e74514 100644
--- a/pack.rb
+++ b/pack.rb
@@ -3,23 +3,25 @@ class Array
# pack(template, buffer: nil) -> string
#
# Formats each element in +self+ into a binary string; returns that string.
- # See {Packed Data}[rdoc-ref:packed_data.rdoc].
+ # See {Packed Data}[rdoc-ref:language/packed_data.rdoc].
def pack(fmt, buffer: nil)
Primitive.pack_pack(fmt, buffer)
end
end
class String
- # call-seq:
- # unpack(template, offset: 0, &block) -> array
+ # call-seq:
+ # unpack(template, offset: 0) {|o| .... } -> object
+ # unpack(template, offset: 0) -> array
#
- # Extracts data from +self+.
+ # Extracts data from +self+ to form new objects;
+ # see {Packed Data}[rdoc-ref:language/packed_data.rdoc].
#
- # If +block+ is not given, forming objects that become the elements
- # of a new array, and returns that array. Otherwise, yields each
- # object.
+ # With a block given, calls the block with each unpacked object.
#
- # See {Packed Data}[rdoc-ref:packed_data.rdoc].
+ # With no block given, returns an array containing the unpacked objects.
+ #
+ # Related: see {Converting to Non-String}[rdoc-ref:String@Converting+to+Non--5CString].
def unpack(fmt, offset: 0)
Primitive.attr! :use_block
Primitive.pack_unpack(fmt, offset)
@@ -28,8 +30,10 @@ class String
# call-seq:
# unpack1(template, offset: 0) -> object
#
- # Like String#unpack, but unpacks and returns only the first extracted object.
- # See {Packed Data}[rdoc-ref:packed_data.rdoc].
+ # Like String#unpack with no block, but unpacks and returns only the first extracted object.
+ # See {Packed Data}[rdoc-ref:language/packed_data.rdoc].
+ #
+ # Related: see {Converting to Non-String}[rdoc-ref:String@Converting+to+Non--5CString].
def unpack1(fmt, offset: 0)
Primitive.pack_unpack1(fmt, offset)
end