Class: ZScan::BSpec
- Inherits:
-
Object
- Object
- ZScan::BSpec
- Defined in:
- lib/zscan/bspec.rb
Instance Method Summary collapse
- #_append_expect(expect_i, pack_format, opts) ⇒ Object
- #double ⇒ Object (also: #double_le)
- #double_swap ⇒ Object (also: #double_be)
-
#initialize(&p) ⇒ BSpec
constructor
A new instance of BSpec.
- #int16(opts = nil) ⇒ Object (also: #int16_le)
- #int16_swap(opts = nil) ⇒ Object (also: #int16_be)
- #int32(opts = nil) ⇒ Object (also: #int32_le)
- #int32_swap(opts = nil) ⇒ Object (also: #int32_be)
- #int64(opts = nil) ⇒ Object (also: #int64_le)
- #int64_swap(opts = nil) ⇒ Object (also: #int64_be)
- #int8(opts = nil) ⇒ Object
- #single ⇒ Object (also: #single_le, #float)
- #single_swap ⇒ Object (also: #single_be)
- #uint16(opts = nil) ⇒ Object (also: #uint16_le)
- #uint16_swap(opts = nil) ⇒ Object (also: #uint16_be)
- #uint32(opts = nil) ⇒ Object (also: #uint32_le)
- #uint32_swap(opts = nil) ⇒ Object (also: #uint32_be)
- #uint64(opts = nil) ⇒ Object (also: #uint64_le)
- #uint64_swap(opts = nil) ⇒ Object (also: #uint64_be)
- #uint8(opts = nil) ⇒ Object (also: #byte)
Constructor Details
#initialize(&p) ⇒ BSpec
Returns a new instance of BSpec.
16 17 18 |
# File 'lib/zscan/bspec.rb', line 16 def initialize &p instance_eval &p end |
Instance Method Details
#_append_expect(expect_i, pack_format, opts) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 |
# File 'lib/zscan/bspec.rb', line 4 def _append_expect expect_i, pack_format, opts if opts.is_a?(Hash) expect = opts[:expect] if expect.is_a?(Integer) and opts.size == 1 ZScan::BSpec._append self, expect_i ZScan::BSpec._append_expect self, [expect].pack(pack_format) else raise ArgumentError, "only :expect option allowed, but got #{opts.inspect}" end end end |
#double ⇒ Object Also known as: double_le
101 102 103 |
# File 'lib/zscan/bspec.rb', line 101 def double ZScan::BSpec._append self, 21 end |
#double_swap ⇒ Object Also known as: double_be
105 106 107 |
# File 'lib/zscan/bspec.rb', line 105 def double_swap ZScan::BSpec._append self, 22 end |
#int16(opts = nil) ⇒ Object Also known as: int16_le
31 32 33 34 |
# File 'lib/zscan/bspec.rb', line 31 def int16 opts=nil _append_expect 2, (BSpec.big_endian? ? 's>' : 's<'), opts ZScan::BSpec._append self, 7 end |
#int16_swap(opts = nil) ⇒ Object Also known as: int16_be
36 37 38 39 |
# File 'lib/zscan/bspec.rb', line 36 def int16_swap opts=nil _append_expect 2, (BSpec.big_endian? ? 's<' : 's>'), opts ZScan::BSpec._append self, 8 end |
#int32(opts = nil) ⇒ Object Also known as: int32_le
41 42 43 44 |
# File 'lib/zscan/bspec.rb', line 41 def int32 opts=nil _append_expect 3, (BSpec.big_endian? ? 'l>' : 'l<'), opts ZScan::BSpec._append self, 9 end |
#int32_swap(opts = nil) ⇒ Object Also known as: int32_be
46 47 48 49 |
# File 'lib/zscan/bspec.rb', line 46 def int32_swap opts=nil _append_expect 3, (BSpec.big_endian? ? 'l<' : 'l>'), opts ZScan::BSpec._append self, 10 end |
#int64(opts = nil) ⇒ Object Also known as: int64_le
51 52 53 54 |
# File 'lib/zscan/bspec.rb', line 51 def int64 opts=nil _append_expect 4, (BSpec.big_endian? ? 'q>' : 'q<'), opts ZScan::BSpec._append self, 11 end |
#int64_swap(opts = nil) ⇒ Object Also known as: int64_be
56 57 58 59 |
# File 'lib/zscan/bspec.rb', line 56 def int64_swap opts=nil _append_expect 4, (BSpec.big_endian? ? 'q<' : 'q>'), opts ZScan::BSpec._append self, 12 end |
#int8(opts = nil) ⇒ Object
21 22 23 24 |
# File 'lib/zscan/bspec.rb', line 21 def int8 opts=nil _append_expect 1, 'c', opts ZScan::BSpec._append self, 5 end |
#single ⇒ Object Also known as: single_le, float
93 94 95 |
# File 'lib/zscan/bspec.rb', line 93 def single ZScan::BSpec._append self, 19 end |
#single_swap ⇒ Object Also known as: single_be
97 98 99 |
# File 'lib/zscan/bspec.rb', line 97 def single_swap ZScan::BSpec._append self, 20 end |
#uint16(opts = nil) ⇒ Object Also known as: uint16_le
61 62 63 64 |
# File 'lib/zscan/bspec.rb', line 61 def uint16 opts=nil _append_expect 2, (BSpec.big_endian? ? 'S>' : 'S<'), opts ZScan::BSpec._append self, 13 end |
#uint16_swap(opts = nil) ⇒ Object Also known as: uint16_be
66 67 68 69 |
# File 'lib/zscan/bspec.rb', line 66 def uint16_swap opts=nil _append_expect 2, (BSpec.big_endian? ? 'S<' : 'S>'), opts ZScan::BSpec._append self, 14 end |
#uint32(opts = nil) ⇒ Object Also known as: uint32_le
71 72 73 74 |
# File 'lib/zscan/bspec.rb', line 71 def uint32 opts=nil _append_expect 3, (BSpec.big_endian? ? 'L>' : 'L<'), opts ZScan::BSpec._append self, 15 end |
#uint32_swap(opts = nil) ⇒ Object Also known as: uint32_be
76 77 78 79 |
# File 'lib/zscan/bspec.rb', line 76 def uint32_swap opts=nil _append_expect 3, (BSpec.big_endian? ? 'L<' : 'L>'), opts ZScan::BSpec._append self, 16 end |
#uint64(opts = nil) ⇒ Object Also known as: uint64_le
81 82 83 84 |
# File 'lib/zscan/bspec.rb', line 81 def uint64 opts=nil _append_expect 4, (BSpec.big_endian? ? 'Q>' : 'Q<'), opts ZScan::BSpec._append self, 17 end |