Function in bytes coil-stdlib

slice

fn slice(Vec<byte> src, int start, int end) -> Vec<byte>
Import
use bytes::{slice};
Source: src/bytes.hy

Returns a copy of src[start..end] (end exclusive), with both offsets clamped to the buffer.

Parameters#

NameType
srcVec<byte>
startint
endint

Returns#

Vec<byte>

Contracts#

Checked according to --contracts (see Contracts).

ensures result.len() <= src.len()
ensures start < end || result.len() == 0

Examples#

use bytes::{slice};
use tests::assert;
let b: Vec<byte> = "hello";
assert!(slice(b, 1, 3).len() == 2);
assert!(slice(b, 3, 99).len() == 2);

See also#

  • region_eq: True when a[ao..ao+n) equals b[bo..bo+n) (caller guarantees bounds).
  • to_hex: Encodes buf as lowercase hexadecimal, two digits per byte.
  • from_hex: Decodes hexadecimal text (either case) into bytes.
  • concat: Returns a new buffer holding a followed by b.
  • eq: Returns true when a and b have the same length and the same bytes.
  • find_from: Returns the offset of the first needle in hay at or after start, or -1.
  • find: Returns the offset of the first needle in hay, or -1.
  • rfind: Returns the offset of the last needle in hay, or -1.
↑ ↓ navigate ↵ open