Class ReaderWriter

extends Object
A shim that allows one task to have a read interface and the other task to have a blocking write interface. Implements write.
Deprecated.

Class summary


constructor buffer-size/int=
Constructs a reader-writer.

Constructors

constructor buffer-size/int=64
Constructs a reader-writer.
The buffer-size determines the size of the communication buffer.

Methods

close -> none
Closes the ReaderWriter for writing.

operator == other/any -> bool
Whether this object is equal to the other.
By default, identical is used for equality.
Inheritance
Classes overwrite this operator to get an equality specific to their needs. Equality operators often compare the type and field contents. For example:

class Pin:
  number/int

  constructor .number:

  operator == other:
    if other is not Pin: return false
    return number == other.number
A class doesn't have to follow the above format, but it must keep the operator in sync with any hash-code method. That is, if a class has a hash-code member, then the equality and hash-code must agree. If two instances are equal (a == b), then their hash codes must also be equal (a.hash-code == b.hash-code).

Stringifies this object.
Inheritance
Objects that need a human-friendly string representation should overwrite this method. The default string is based on the internal class-ID.

write data/Data from/int=0 to/int=data.byte-size -> any
Writes the given data.
May block, waiting for the reader.
It is an error to close the reader without consuming all data that is written.