class Gio::BufferedOutputStream
Overview
Buffered output stream implements #GFilterOutputStream and provides for buffered writes.
By default, #GBufferedOutputStream's buffer size is set at 4 kilobytes.
To create a buffered output stream, use g_buffered_output_stream_new(), or g_buffered_output_stream_new_sized() to specify the buffer's size at construction.
To get the size of a buffer within a buffered input stream, use g_buffered_output_stream_get_buffer_size(). To change the size of a buffered output stream's buffer, use g_buffered_output_stream_set_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
Returns the type id (GType) registered in GLib type system.
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.