6 const std::string& filepath,
14 const bool finalized =
close();
bool write(const std::string &filepath, const Kakshya::CompositeArray &array)
Write a complete array in one call.
virtual bool open(const std::string &filepath, const Kakshya::CompositeLayout &layout)=0
Open a new file with the schema all subsequent slices must use.
virtual bool close()=0
Finish the file and release its output stream.
virtual bool write_rows(const Kakshya::CompositeSlice &rows)=0
Write a bounded slice of elements.
size_t size() const noexcept
Number of packed elements.
const CompositeLayout & layout() const noexcept
Finalized layout shared by all elements.
std::optional< CompositeSlice > slice(size_t start, size_t count) const
Borrow consecutive elements without copying.
Owns a sequence of values that share a CompositeLayout.