class Gio::BufferedOutputStream
Overview
Buffered output stream implements Gio::FilterOutputStream
and provides
for buffered writes.
By default, GBufferedOutputStream
's buffer size is set at 4 kilobytes.
To create a buffered output stream, use Gio::BufferedOutputStream.new
,
or Gio::BufferedOutputStream#new_sized
to specify the buffer's size
at construction.
To get the size of a buffer within a buffered input stream, use
Gio::BufferedOutputStream#buffer_size
. To change the size of a
buffered output stream's buffer, use Gio::BufferedOutputStream#buffer_size=
.
Note that the buffer's size cannot be reduced below the size of the data within the buffer.
Included Modules
Defined in:
lib/gi-crystal/src/auto/gio-2.0/buffered_output_stream.crConstructors
-
.new(base_stream : Gio::OutputStream) : self
Creates a new buffered output stream for a base stream.
-
.new
Initialize a new
BufferedOutputStream
. - .new(*, auto_grow : Bool | Nil = nil, base_stream : Gio::OutputStream | Nil = nil, buffer_size : UInt32 | Nil = nil, close_base_stream : Bool | Nil = nil)
-
.new_sized(base_stream : Gio::OutputStream, size : UInt64) : self
Creates a new buffered output stream with a given buffer size.
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. -
#auto_grow : Bool
Checks if the buffer automatically grows as data is added.
-
#auto_grow=(auto_grow : Bool) : Nil
Sets whether or not the stream's buffer should automatically grow.
- #auto_grow? : Bool
-
#buffer_size : UInt64
Gets the size of the buffer in the stream.
- #buffer_size=(value : UInt32) : UInt32
-
#buffer_size=(size : UInt64) : Nil
Sets the size of the internal buffer to size.
-
#hash(hasher)
See
Object#hash(hasher)
Instance methods inherited from module Gio::Seekable
can_seek : Bool
can_seek,
can_truncate : Bool
can_truncate,
seek(offset : Int64, type : GLib::SeekType, cancellable : Gio::Cancellable | Nil) : Bool
seek,
tell : Int64
tell,
to_unsafe
to_unsafe,
truncate(offset : Int64, cancellable : Gio::Cancellable | Nil) : Bool
truncate
Constructor methods inherited from module Gio::Seekable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gio::Seekable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class Gio::FilterOutputStream
==(other : self)
==,
base_stream : Gio::OutputStream
base_stream,
base_stream=(value : Gio::OutputStream | Nil) : Gio::OutputStream | Nil
base_stream=,
close_base_stream : Bool
close_base_stream,
close_base_stream=(close_base : Bool) : Nil
close_base_stream=,
close_base_stream? : Bool
close_base_stream?,
hash(hasher)
hash
Constructor methods inherited from class Gio::FilterOutputStream
newnew(*, base_stream : Gio::OutputStream | Nil = nil, close_base_stream : Bool | Nil = nil) new
Class methods inherited from class Gio::FilterOutputStream
g_type : UInt64
g_type
Instance methods inherited from class Gio::OutputStream
==(other : self)
==,
clear_pending : Nil
clear_pending,
close(cancellable : Gio::Cancellable | Nil) : Bool
close,
close_async(io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
close_async,
close_finish(result : Gio::AsyncResult) : Bool
close_finish,
flush(cancellable : Gio::Cancellable | Nil) : Bool
flush,
flush_async(io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
flush_async,
flush_finish(result : Gio::AsyncResult) : Bool
flush_finish,
has_pending : Bool
has_pending,
hash(hasher)
hash,
is_closed : Bool
is_closed,
is_closing : Bool
is_closing,
set_pending : Bool
set_pending,
splice(source : Gio::InputStream, flags : Gio::OutputStreamSpliceFlags, cancellable : Gio::Cancellable | Nil) : Int64
splice,
splice_async(source : Gio::InputStream, flags : Gio::OutputStreamSpliceFlags, io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
splice_async,
splice_finish(result : Gio::AsyncResult) : Int64
splice_finish,
write(buffer : Bytes, cancellable : Gio::Cancellable | Nil) : Int64
write,
write_all(buffer : Bytes, cancellable : Gio::Cancellable | Nil) : Bool
write_all,
write_all_async(buffer : Bytes, io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
write_all_async,
write_all_finish(result : Gio::AsyncResult) : Bool
write_all_finish,
write_async(buffer : Bytes, io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
write_async,
write_bytes(bytes : GLib::Bytes, cancellable : Gio::Cancellable | Nil) : Int64
write_bytes,
write_bytes_async(bytes : GLib::Bytes, io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
write_bytes_async,
write_bytes_finish(result : Gio::AsyncResult) : Int64
write_bytes_finish,
write_finish(result : Gio::AsyncResult) : Int64
write_finish,
writev(vectors : Enumerable(Gio::OutputVector), cancellable : Gio::Cancellable | Nil) : Bool
writev,
writev_all(vectors : Enumerable(Gio::OutputVector), cancellable : Gio::Cancellable | Nil) : Bool
writev_all,
writev_all_async(vectors : Enumerable(Gio::OutputVector), io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
writev_all_async,
writev_all_finish(result : Gio::AsyncResult) : Bool
writev_all_finish,
writev_async(vectors : Enumerable(Gio::OutputVector), io_priority : Int32, cancellable : Gio::Cancellable | Nil, &callback : Gio::AsyncReadyCallback) : Nil
writev_async,
writev_finish(result : Gio::AsyncResult) : Bool
writev_finish
Constructor methods inherited from class Gio::OutputStream
new
new
Class methods inherited from class Gio::OutputStream
g_type : UInt64
g_type
Instance methods inherited from class GObject::Object
==(other : self)
==,
bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding
bind_property,
bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding
bind_property_full,
data(key : String) : Pointer(Void) | Nil
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
hash(hasher)
hash,
notify(property_name : String) : Nil
notify,
notify_by_pspec(pspec : GObject::ParamSpec) : Nil
notify_by_pspec,
notify_signal
notify_signal,
property(property_name : String, value : _) : Nil
property,
qdata(quark : UInt32) : Pointer(Void) | Nil
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void) | Nil) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void) | Nil
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void) | Nil
steal_qdata,
thaw_notify : Nil
thaw_notify,
to_unsafe : Pointer(Void)
to_unsafe,
watch_closure(closure : GObject::Closure) : Nil
watch_closure
Constructor methods inherited from class GObject::Object
cast(obj : GObject::Object) : self
cast,
new(pointer : Pointer(Void), transfer : GICrystal::Transfer)new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv
Class methods inherited from class GObject::Object
cast?(obj : GObject::Object) : self | Nil
cast?,
compat_control(what : UInt64, data : Pointer(Void) | Nil) : UInt64
compat_control,
g_type : UInt64
g_type,
interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec
interface_find_property,
interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec)
interface_list_properties
Macros inherited from class GObject::Object
previous_vfunc(*args)
previous_vfunc,
previous_vfunc!(*args)
previous_vfunc!,
signal(signature)
signal
Constructor Detail
Creates a new buffered output stream for a base stream.
Creates a new buffered output stream with a given buffer size.
Class Method Detail
Instance Method Detail
Returns true
if this reference is the same as other. Invokes same?
.
Sets whether or not the stream's buffer should automatically grow. If auto_grow is true, then each write will just make the buffer larger, and you must manually flush the buffer to actually write out the data to the underlying stream.