Module: BinData::CheckOrAdjustOffsetPlugin
- Included in:
- Base
- Defined in:
- lib/bindata/offset.rb
Overview
WARNING: THIS IS UNSUPPORTED!!
This was a (failed) experimental feature that allowed seeking within the input stream. It remains here for backwards compatability for the few people that used it.
The official way to skip around the stream is to use BinData::Skip with the ‘:to_abs_offset` parameter.
Parameters
Parameters may be provided at initialisation to control the behaviour of an object. These parameters are:
:check_offset
-
Raise an error if the current IO offset doesn’t meet this criteria. A boolean return indicates success or failure. Any other return is compared to the current offset. The variable
offset
is made available to any lambda assigned to this parameter. This parameter is only checked before reading. :adjust_offset
-
Ensures that the current IO offset is at this position before reading. This is like
:check_offset
, except that it will adjust the IO offset instead of raising an error.
Defined Under Namespace
Modules: AdjustOffsetMixin, CheckOffsetMixin
Class Method Summary collapse
-
.included(base) ⇒ Object
:nodoc:.
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
:nodoc:
29 30 31 32 |
# File 'lib/bindata/offset.rb', line 29 def self.included(base) #:nodoc: base.optional_parameters :check_offset, :adjust_offset base.mutually_exclusive_parameters :check_offset, :adjust_offset end |
Instance Method Details
#initialize_shared_instance ⇒ Object
34 35 36 37 38 |
# File 'lib/bindata/offset.rb', line 34 def initialize_shared_instance extend CheckOffsetMixin if has_parameter?(:check_offset) extend AdjustOffsetMixin if has_parameter?(:adjust_offset) super end |