module Gio::Seekable
Overview
GSeekable is implemented by streams (implementations of
Gio::InputStream or Gio::OutputStream) that support seeking.
Seekable streams largely fall into two categories: resizable and fixed-size.
GSeekable on fixed-sized streams is approximately the same as POSIX
lseek() on a block device (for example: attempting to seek
past the end of the device is an error). Fixed streams typically cannot be
truncated.
GSeekable on resizable streams is approximately the same as POSIX
lseek() on a normal file. Seeking past the end and writing
data will usually cause the stream to resize by introducing zero bytes.
Direct including types
- Gio::BufferedInputStream
- Gio::BufferedOutputStream
- Gio::DataInputStream
- Gio::DataOutputStream
- Gio::FileInputStream
- Gio::FileIOStream
- Gio::FileOutputStream
- Gio::MemoryInputStream
- Gio::MemoryOutputStream
Defined in:
lib/gi-crystal/src/auto/gio-2.0/seekable.crConstructors
-
.cast(obj : GObject::Object) : self
Cast a
GObject::Objecttoself, throws aTypeCastErrorif the cast can't be made.
Class Method Summary
Instance Method Summary
- #can_seek : Bool
- #can_truncate : Bool
- #seek(offset : Int64, type : GLib::SeekType, cancellable : Gio::Cancellable | Nil) : Bool
- #tell : Int64
- #to_unsafe
- #truncate(offset : Int64, cancellable : Gio::Cancellable | Nil) : Bool