Skip to content

feat(streams): Abstract stream connections #87

@grypez

Description

@grypez

Streams are asynchronous remote i/o interfaces. By wrapping them around connections, we get a uniform interface for passing messages to targets regardless of their sync/async//local/remote nature. Using the stream envelope kit, we can constrain the kinds of messages passed either way both at compile time and runtime. We can also pipe streams to one another, allowing us to connect targets across paths proxied through different connection types without writing a specific interface for every pair of connections.

We should wrap the background <--> offscreen connection in a stream, and have the kernel operate on an input stream, too.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions