Expand description
§StringTape
Memory-efficient string and bytes storage compatible with Apache Arrow.
use stringtape::{StringTapeI32, StringTapeError};
let mut tape = StringTapeI32::new();
tape.push("hello")?;
tape.push("world")?;
assert_eq!(tape.len(), 2);
assert_eq!(&tape[0], "hello");
// Iterate over strings
for s in &tape {
println!("{}", s);
}
It also supports binary data via BytesTape
:
use stringtape::{BytesTapeI32, StringTapeError};
let mut tape = BytesTapeI32::new();
tape.push(&[0xde, 0xad, 0xbe, 0xef])?;
tape.push(b"bytes")?;
assert_eq!(&tape[1], b"bytes" as &[u8]);
Structs§
- Bytes
Tape - Binary bytes view over
RawTape
. - Bytes
Tape View - Binary bytes view over
RawTapeView
. - RawParts
- Named raw parts returned by
as_raw_parts
methods. - RawTape
View - A view into a continuous slice of a RawTape.
- String
Tape - UTF-8 string view over
RawTape
. - String
Tape Iter - String
Tape View - UTF-8 string view over
RawTapeView
.
Enums§
- String
Tape Error - Errors that can occur when working with StringTape.
Traits§
- Offset
Type - Trait for offset types used in StringTape.