Versions in this module Expand all Collapse all v1 v1.1.0 Oct 14, 2026 v1.0.0 Oct 14, 2026 Changes in this version + var ErrClosed = errors.New("emberplus: client closed") + var ErrKeepAliveTimeout = errors.New("emberplus: keep-alive timeout") + var ErrNotFound = errors.New("emberplus: element not found") + var ErrNotStream = errors.New("emberplus: parameter is not a stream") + var ErrWrongType = errors.New("emberplus: wrong element type") + type Client struct + func Dial(ctx context.Context, addr string, opts ...Option) (*Client, error) + func NewClient(conn io.ReadWriteCloser, opts ...Option) *Client + func (c *Client) Children(ctx context.Context, path string) ([]glow.Element, error) + func (c *Client) Close() error + func (c *Client) Connect(ctx context.Context, path string, target uint32, sources []uint32, ...) (glow.Connection, error) + func (c *Client) Done() <-chan struct{} + func (c *Client) Err() error + func (c *Client) Get(ctx context.Context, path string) (glow.Element, error) + func (c *Client) GetDirectory(ctx context.Context, path string) ([]glow.Element, error) + func (c *Client) IdentifierPath(ctx context.Context, path string) (string, error) + func (c *Client) Invoke(ctx context.Context, path string, args ...glow.Value) (*glow.InvocationResult, error) + func (c *Client) IsOnline(ctx context.Context, path string) (bool, error) + func (c *Client) SetValue(ctx context.Context, path string, v glow.Value) (glow.Value, error) + func (c *Client) Subscribe(ctx context.Context, path string) (unsubscribe func() error, err error) + func (c *Client) Watch(ctx context.Context, path string, fn func(Event)) (stop func(), err error) + type Event struct + Element glow.Element + Update glow.Element + type Option func(*config) + func WithKeepAlive(idle, timeout time.Duration) Option + func WithLogger(l *slog.Logger) Option + func WithRequestTimeout(d time.Duration) Option