def part(position, length)
      raise ArgumentError, 'position must be an Integer' if not position.is_a?(::Integer)
      raise ArgumentError, 'length must be a non-negative Integer' if not length.is_a?(::Integer) or length < 0
      return Erlang::Binary[@data.byteslice(position, length)]
    end
def part(position, length)
      raise ArgumentError, 'position must be an Integer' if not position.is_a?(::Integer)
      raise ArgumentError, 'length must be a non-negative Integer' if not length.is_a?(::Integer) or length < 0
      return Erlang::Binary[@data.byteslice(position, length)]
    end
Returns the section of this `Binary` starting at `position` of `length`.

 @param position [Integer] The starting position
 @param length [Integer] The non-negative length
 @return [Binary]
 @raise [ArgumentError] if `position` is not an `Integer` or `length` is not a non-negative `Integer`