class Gio::MemoryOutputStream
- Gio::MemoryOutputStream
- Gio::OutputStream
- GObject::Object
- Reference
- Object
Overview
#GMemoryOutputStream is a class for using arbitrary memory chunks as output for GIO streaming output operations.
As of GLib 2.34, #GMemoryOutputStream trivially implements #GPollableOutputStream: it always polls as ready.
Included Modules
Defined in:
lib/gi-crystal/src/auto/gio-2.0/memory_output_stream.crConstructors
-
.new
Initialize a new
MemoryOutputStream
. - .new(*, data : Pointer(Void) | Nil = nil, data_size : UInt64 | Nil = nil, size : UInt64 | Nil = nil)
-
.new_resizable : self
Creates a new #GMemoryOutputStream, using g_realloc() and g_free() for memory allocation.
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. -
#data : Pointer(Void) | Nil
Gets any loaded data from the ostream.
- #data=(value : Pointer(Void)) : Pointer(Void)
-
#data_size : UInt64
Returns the number of bytes from the start up to including the last byte written in the stream that has not been truncated away.
-
#hash(hasher)
See
Object#hash(hasher)
-
#size : UInt64
Gets the size of the currently allocated data area (available from g_memory_output_stream_get_data()).
- #size=(value : UInt64) : UInt64
-
#steal_as_bytes : GLib::Bytes
Returns data from the ostream as a #GBytes.
-
#steal_data : Pointer(Void) | Nil
Gets any loaded data from the ostream.
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 module Gio::PollableOutputStream
can_poll : Bool
can_poll,
create_source(cancellable : Gio::Cancellable | Nil) : GLib::Source
create_source,
is_writable : Bool
is_writable,
to_unsafe
to_unsafe,
write_nonblocking(buffer : Bytes, cancellable : Gio::Cancellable | Nil) : Int64
write_nonblocking,
writev_nonblocking(vectors : Enumerable(Gio::OutputVector), cancellable : Gio::Cancellable | Nil) : Gio::PollableReturn
writev_nonblocking
Constructor methods inherited from module Gio::PollableOutputStream
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gio::PollableOutputStream
cast?(obj : GObject::Object) : self | Nil
cast?,
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 #GMemoryOutputStream, using g_realloc() and g_free() for memory allocation.
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?
.
Gets any loaded data from the ostream.
Note that the returned pointer may become invalid on the next write or truncate operation on the stream.
Returns the number of bytes from the start up to including the last byte written in the stream that has not been truncated away.
Gets the size of the currently allocated data area (available from g_memory_output_stream_get_data()).
You probably don't want to use this function on resizable streams. See g_memory_output_stream_get_data_size() instead. For resizable streams the size returned by this function is an implementation detail and may be change at any time in response to operations on the stream.
If the stream is fixed-sized (ie: no realloc was passed to g_memory_output_stream_new()) then this is the maximum size of the stream and further writes will return %G_IO_ERROR_NO_SPACE.
In any case, if you want the number of bytes currently written to the stream, use g_memory_output_stream_get_data_size().
Returns data from the ostream as a #GBytes. ostream must be closed before calling this function.
Gets any loaded data from the ostream. Ownership of the data is transferred to the caller; when no longer needed it must be freed using the free function set in ostream's #GMemoryOutputStream:destroy-function property. ostream must be closed before calling this function.