The actual I/O is set with the constructor method @.inner_io.set
and can be retrieved with @.inner_io.get, which should be used
with care -- calling @Efl.Io.Reader.read and
@Efl.Io.Writer.write on it may produce unexpected results.
@since 1.19
]]
methods {
@property inner_io {
[[The inner I/O this wrapper operates on.]]
get {
[[The internal input/output used for actual operations, use with care!]]
}
set {
[[Constructor-only property to set the inner_io.]]
}
values {
io: Efl.Object; [[The input (@Efl.Io.Reader) or output (@Efl.Io.Writer) instance]]
}
}
@property max_queue_size_input {
[[Limit how big the input queue can grow, in bytes.
If limited and @.line_delimiter is set, "line" events
may be emitted with partial contents, without the
trailing delimiter.
]]
get { }
set {
[[Constructor-only property to set buffer limit. 0 is unlimited]]
}
values {
max_queue_size_input: size; [[Defines a maximum buffer size for incoming data, or 0 to allow unlimited amount of bytes]]
}
}
@property max_queue_size_output {
[[Limit how big the output queue can grow, in bytes.
If limited, @Efl.Io.Writer.write will take less data than requested!
]]
get { }
set {
[[Constructor-only property to set buffer limit. 0 is unlimited]]
}
values {
max_queue_size_output: size; [[Defines a maximum buffer size for output data, or 0 to allow unlimited amount of bytes. If limited, @Efl.Io.Writer.write will take less data than requested!]]
}
}
@property line_delimiter {
[[If set, incoming data will be checked for the delimiter and "line" events are The line may include the delimiter, unless it's end-of-stream on @.max_queue_size_input was reached.]]
slice: Eina.Slice; [[Slice of the current buffer, may be invalidated if @Efl.Io.Writer.write, @Efl.Io.Closer.close or @Efl.Io.Reader.read are called. It is the full slice available for reading.]]
slice,changed; [[The read-slice returned by @.slice may have changed.]]
line: ptr(const(Eina.Slice)); [[If @.line_delimiter is set, will be emitted with current line. The memory is only valid during event callback dispatched and should not be modified. Note that the line slice may not be inside @.slice, don't assume that!]]