Interface MutableBytes48

All Superinterfaces:
Bytes, Bytes48, Comparable<Bytes>, MutableBytes

public interface MutableBytes48 extends MutableBytes, Bytes48
A mutable Bytes48, that is a mutable Bytes value of exactly 48 bytes.
  • Method Details

    • create

      static MutableBytes48 create()
      Create a new mutable 48 bytes value.
      Returns:
      A newly allocated MutableBytes value.
    • wrap

      static MutableBytes48 wrap(byte[] value)
      Wrap a 48 bytes array as a mutable 48 bytes value.
      Parameters:
      value - The value to wrap.
      Returns:
      A MutableBytes48 wrapping value.
      Throws:
      IllegalArgumentException - if value.length != 48.
    • wrap

      static MutableBytes48 wrap(byte[] value, int offset)
      Wrap a the provided array as a MutableBytes48.

      Note that value is not copied, only wrapped, and thus any future update to value within the wrapped parts will be reflected in the returned value.

      Parameters:
      value - The bytes to wrap.
      offset - The index (inclusive) in value of the first byte exposed by the returned value. In other words, you will have wrap(value, i).get(0) == value[i].
      Returns:
      A MutableBytes48 that exposes the bytes of value from offset (inclusive) to offset + 48 (exclusive).
      Throws:
      IndexOutOfBoundsException - if offset < 0 || (value.length > 0 && offset >= value.length).
      IllegalArgumentException - if length < 0 || offset + 48 > value.length.
    • wrap

      static MutableBytes48 wrap(MutableBytes value)
      Wrap a the provided value, which must be of size 48, as a MutableBytes48.

      Note that value is not copied, only wrapped, and thus any future update to value will be reflected in the returned value.

      Parameters:
      value - The bytes to wrap.
      Returns:
      A MutableBytes48 that exposes the bytes of value.
      Throws:
      IllegalArgumentException - if value.size() != 48.
    • wrap

      static MutableBytes48 wrap(MutableBytes value, int offset)
      Wrap a slice/sub-part of the provided value as a MutableBytes48.

      Note that the value is not copied, and thus any future update to value within the wrapped parts will be reflected in the returned value.

      Parameters:
      value - The bytes to wrap.
      offset - The index (inclusive) in value of the first byte exposed by the returned value. In other words, you will have wrap(value, i).get(0) == value.get(i).
      Returns:
      A Bytes48 that exposes the bytes of value from offset (inclusive) to offset + 48 (exclusive).
      Throws:
      IndexOutOfBoundsException - if offset < 0 || (value.size() > 0 && offset >= value.size()).
      IllegalArgumentException - if length < 0 || offset + 48 > value.size().