rx

package
v0.5.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 4, 2020 License: Apache-2.0 Imports: 3 Imported by: 15

Documentation

Index

Constants

View Source
const (
	// SignalComplete indicated that subscriber was completed.
	SignalComplete = SignalType(reactor.SignalTypeComplete)
	// SignalCancel indicates that subscriber was cancelled.
	SignalCancel = SignalType(reactor.SignalTypeCancel)
	// SignalError indicates that subscriber has some faults.
	SignalError = SignalType(reactor.SignalTypeError)
)
View Source
const RequestMax = reactor.RequestInfinite

RequestMax represents unbounded request amount.

Variables

This section is empty.

Functions

This section is empty.

Types

type FnFinally added in v0.3.0

type FnFinally = func(s SignalType)

FnFinally is alias of function for signal when all things done.

type FnOnCancel

type FnOnCancel = func()

FnOnCancel is alias of function for signal when subscription canceled.

type FnOnComplete

type FnOnComplete = func()

FnOnComplete is alias of function for signal when no more elements are available

type FnOnError

type FnOnError = func(e error)

FnOnError is alias of function for signal when an error occurred.

type FnOnNext

type FnOnNext = func(input payload.Payload)

FnOnNext is alias of function for signal when next element arrived.

type FnOnRequest

type FnOnRequest = func(n int)

FnOnRequest is alias of function for signal when requesting next element.

type FnOnSubscribe

type FnOnSubscribe = func(s Subscription)

FnOnSubscribe is alias of function for signal when subscribe begin.

type FnPredicate added in v0.3.0

type FnPredicate = func(input payload.Payload) bool

FnPredicate is alias of function for filter operations.

type Publisher

type Publisher interface {
	RawPublisher
	// Subscribe subscribe elements from a publisher, returns a Disposable.
	// You can add some custome options.
	// Using `OnSubscribe`, `OnNext`, `OnComplete` and `OnError` as handler wrapper.
	Subscribe(ctx context.Context, options ...SubscriberOption)
}

Publisher is a provider of a potentially unbounded number of sequenced elements, \ publishing them according to the demand received from its Subscriber(s).

type RawPublisher added in v0.3.0

type RawPublisher interface {
	// SubscribeWith can be used to subscribe current publisher.
	SubscribeWith(ctx context.Context, s Subscriber)
}

RawPublisher represents a basic Publisher which can be subscribed by a Subscriber.

type SignalType

type SignalType reactor.SignalType

SignalType is the signal of reactive events like `OnNext`, `OnComplete`, `OnCancel` and `OnError`.

func (SignalType) String added in v0.3.0

func (s SignalType) String() string

type Subscriber

type Subscriber interface {
	// OnNext represents data notification sent by the Publisher in response to requests to Subscription#Request.
	OnNext(payload payload.Payload)
	// OnError represents failed terminal state.
	OnError(error)
	// OnComplete represents successful terminal state.
	OnComplete()
	// OnSubscribe invoked after Publisher subscribed.
	// No data will start flowing until Subscription#Request is invoked.
	OnSubscribe(Subscription)
}

Subscriber will receive call to OnSubscribe(Subscription) once after passing an instance of Subscriber to Publisher#SubscribeWith

var (
	// EmptySubscriber is a blank Subscriber.
	EmptySubscriber Subscriber = &subscriber{}
	// EmptyRawSubscriber is a blank native Subscriber in reactor-go.
	EmptyRawSubscriber = reactor.NewSubscriber(reactor.OnNext(func(v interface{}) {
	}))
)

func NewSubscriber added in v0.3.0

func NewSubscriber(opts ...SubscriberOption) Subscriber

NewSubscriber create a new Subscriber with custom options.

type SubscriberOption added in v0.3.0

type SubscriberOption func(*subscriber)

SubscriberOption is option of subscriber. You can call OnNext, OnComplete, OnError or OnSubscribe.

func OnComplete

func OnComplete(onComplete FnOnComplete) SubscriberOption

OnComplete returns s SubscriberOption handling Complete event.

func OnError

func OnError(onError FnOnError) SubscriberOption

OnError returns s SubscriberOption handling Error event.

func OnNext

func OnNext(onNext FnOnNext) SubscriberOption

OnNext returns s SubscriberOption handling Next event.

func OnSubscribe

func OnSubscribe(onSubscribe FnOnSubscribe) SubscriberOption

OnSubscribe returns s SubscriberOption handling Subscribe event.

type Subscription

type Subscription reactor.Subscription

Subscription represents a one-to-one lifecycle of a Subscriber subscribing to a Publisher.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL