Class: Array
- Defined in:
- lib/ronin/formatting/extensions/text/array.rb,
lib/ronin/formatting/extensions/binary/array.rb
Overview
Copyright (c) 2006-2013 Hal Brodigan (postmodern.mod3 at gmail.com)
This file is part of Ronin Support.
Ronin Support is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Ronin Support is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with Ronin Support. If not, see http://www.gnu.org/licenses/.
Instance Method Summary collapse
-
#bytes ⇒ Array
Decodes the bytes contained within the Array.
-
#char_string ⇒ String
The String created from the characters within the Array.
-
#chars ⇒ Array
Decodes the characters contained within the Array.
-
#hex_chars ⇒ Array<String>
Decodes the bytes contained with the Array, and escapes them as hexadecimal characters.
-
#hex_integers ⇒ Array<String>
Decodes the bytes contained with the Array, and escapes them as hexadecimal integers.
-
#pack(*arguments) ⇒ String
Packs the Array into a String.
- #pack_original ⇒ Object
Instance Method Details
#bytes ⇒ Array
Decodes the bytes contained within the Array. The Array may contain both Integer and String objects.
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/ronin/formatting/extensions/text/array.rb', line 39 def bytes bytes = [] each do |element| case element when Integer then bytes << element else element.to_s.each_byte do |b| bytes << b end end end return bytes end |
#char_string ⇒ String
Returns The String created from the characters within the Array.
85 86 87 |
# File 'lib/ronin/formatting/extensions/text/array.rb', line 85 def char_string chars.join end |
#chars ⇒ Array
Decodes the characters contained within the Array. The Array may contain either Integer or String objects.
68 69 70 71 72 73 |
# File 'lib/ronin/formatting/extensions/text/array.rb', line 68 def chars array_bytes = bytes array_bytes.map! { |b| b.chr } return array_bytes end |
#hex_chars ⇒ Array<String>
Decodes the bytes contained with the Array, and escapes them as hexadecimal characters.
106 107 108 109 110 111 |
# File 'lib/ronin/formatting/extensions/text/array.rb', line 106 def hex_chars array_bytes = bytes array_bytes.map! { |b| '\x%x' % b } return array_bytes end |
#hex_integers ⇒ Array<String>
Decodes the bytes contained with the Array, and escapes them as hexadecimal integers.
130 131 132 133 134 135 |
# File 'lib/ronin/formatting/extensions/text/array.rb', line 130 def hex_integers array_bytes = bytes array_bytes.map! { |b| '0x%x' % b } return array_bytes end |
#pack(*arguments) ⇒ String
Packs the Array into a String.
53 54 55 56 57 58 59 |
# File 'lib/ronin/formatting/extensions/binary/array.rb', line 53 def pack(*arguments) if (arguments.length == 1 && arguments.first.kind_of?(String)) pack_original(arguments.first) else pack_original(Ronin::Binary::Template.compile(arguments)) end end |
#pack_original ⇒ Object
24 |
# File 'lib/ronin/formatting/extensions/binary/array.rb', line 24 alias pack_original pack |