Versions in this module Expand all Collapse all v1 v1.999.300 Sep 4, 2024 Changes in this version + const ApplicationModePermanent + const ApplicationModeTemporary + const ApplicationModeTransient + const ApplicationStateLoaded + const ApplicationStateRunning + const ApplicationStateStopping + const CompressionBestSize + const CompressionBestSpeed + const CompressionDefault + const CompressionTypeGZIP + const CompressionTypeLZW + const CompressionTypeZLIB + const LicenseBSL1 + const LicenseMIT + var DefaultCompressionLevel CompressionLevel = CompressionDefault + var DefaultCompressionThreshold int = 1024 + var DefaultCompressionType CompressionType = CompressionTypeGZIP + var DefaultKeepAlivePeriod time.Duration = 15 * time.Second + var DefaultLogFilter = []LogLevel + var DefaultLogLevels = []LogLevel + var DefaultNetworkFlags = NetworkFlags + var DefaultNetworkProxyFlags = NetworkProxyFlags + var DefaultPort uint16 = 11144 + var DefaultRequestTimeout = 5 + var DefaultTCPBufferSize int = 65535 + var ErrAliasOwner = errors.New("not an owner") + var ErrAliasUnknown = errors.New("unknown alias") + var ErrApplicationDepends = errors.New("dependency fail") + var ErrApplicationEmpty = errors.New("application has no items") + var ErrApplicationLoadPanic = errors.New("panic in application loading") + var ErrApplicationName = errors.New("application has no name") + var ErrApplicationRunning = errors.New("application is still running") + var ErrApplicationState = errors.New("application is in running/stopping state") + var ErrApplicationStopping = errors.New("application stopping is in progress") + var ErrApplicationUnknown = errors.New("unknown application") + var ErrAtomTooLong = errors.New("too long Atom (max: 255)") + var ErrEventOwner = errors.New("not an owner") + var ErrEventUnknown = errors.New("unknown event") + var ErrIncorrect = errors.New("incorrect value or argument") + var ErrInternal = errors.New("internal error") + var ErrMalformed = errors.New("malformed value") + var ErrMetaMailboxFull = errors.New("meta process mailbox is full") + var ErrMetaUnknown = errors.New("unknown meta process") + var ErrNameUnknown = errors.New("unknown name") + var ErrNetworkStopped = errors.New("network stack is stopped") + var ErrNoConnection = errors.New("no connection") + var ErrNoRoute = errors.New("no route") + var ErrNodeTerminated = errors.New("node terminated") + var ErrNotAllowed = errors.New("not allowed") + var ErrParentUnknown = errors.New("parent/leader is not set") + var ErrProcessIncarnation = errors.New("process ID belongs to the previous incarnation") + var ErrProcessMailboxFull = errors.New("process mailbox is full") + var ErrProcessTerminated = errors.New("process terminated") + var ErrProcessUnknown = errors.New("unknown process") + var ErrRegistrarTerminated = errors.New("registrar client terminated") + var ErrResponseIgnored = errors.New("response ignored") + var ErrTaken = errors.New("resource is taken") + var ErrTargetExist = errors.New("target is already exist") + var ErrTargetUnknown = errors.New("unknown target") + var ErrTimeout = errors.New("timed out") + var ErrTooLarge = errors.New("too large") + var ErrUnknown = errors.New("unknown") + var ErrUnregistered = errors.New("unregistered") + var ErrUnsupported = errors.New("not supported") + var TerminateReasonKill error = errors.New("kill") + var TerminateReasonNormal error = errors.New("normal") + var TerminateReasonPanic error = errors.New("panic") + var TerminateReasonShutdown error = errors.New("shutdown") + func ReleaseMailboxMessage(m *MailboxMessage) + type Acceptor interface + Cookie func() string + Info func() AcceptorInfo + MaxMessageSize func() int + NetworkFlags func() NetworkFlags + SetCookie func(cokie string) + SetMaxMessageSize func(size int) + SetNetworkFlags func(flags NetworkFlags) + type AcceptorInfo struct + CustomRegistrar bool + Flags NetworkFlags + HandshakeVersion Version + Interface string + MaxMessageSize int + ProtoVersion Version + RegistrarServer string + RegistrarVersion Version + TLS bool + type AcceptorOptions struct + AtomMapping map[Atom]Atom + BufferSize int + CertManager CertManager + Cookie string + Flags NetworkFlags + Handshake NetworkHandshake + Host string + InsecureSkipVerify bool + MaxMessageSize int + Port uint16 + PortRange uint16 + Proto NetworkProto + Registrar Registrar + TCP string + type Alias Ref + func (a Alias) MarshalJSON() ([]byte, error) + func (a Alias) String() string + type ApplicationBehavior interface + Load func(node Node, args ...any) (ApplicationSpec, error) + Start func(mode ApplicationMode) + Terminate func(reason error) + type ApplicationDepends struct + Applications []Atom + Network bool + type ApplicationInfo struct + Depends ApplicationDepends + Description string + Env map[Env]any + Group []PID + Mode ApplicationMode + Name Atom + Parent Atom + State ApplicationState + Uptime int64 + Version Version + Weight int + type ApplicationMemberSpec struct + Args []any + Factory ProcessFactory + Name Atom + Options ProcessOptions + type ApplicationMode int + func (am ApplicationMode) MarshalJSON() ([]byte, error) + func (am ApplicationMode) String() string + type ApplicationOptions struct + Env map[Env]any + LogLevel LogLevel + type ApplicationOptionsExtra struct + CoreEnv map[Env]any + CoreLogLevel LogLevel + CorePID PID + type ApplicationRoute struct + Mode ApplicationMode + Name Atom + Node Atom + State ApplicationState + Weight int + type ApplicationSpec struct + Depends ApplicationDepends + Description string + Env map[Env]any + Group []ApplicationMemberSpec + LogLevel LogLevel + Mode ApplicationMode + Name Atom + Version Version + Weight int + type ApplicationState int32 + func (as ApplicationState) MarshalJSON() ([]byte, error) + func (as ApplicationState) String() string + type Atom string + const CoreEvent + func (a Atom) CRC32() string + func (a Atom) Host() string + func (a Atom) String() string + type CancelFunc func() bool + type CertManager interface + GetCertificate func() tls.Certificate + GetCertificateFunc func() func(*tls.ClientHelloInfo) (*tls.Certificate, error) + Update func(cert tls.Certificate) + func CreateCertManager(cert tls.Certificate) CertManager + type Compression struct + Enable bool + Level CompressionLevel + Threshold int + Type CompressionType + type CompressionLevel int + func (cl CompressionLevel) MarshalJSON() ([]byte, error) + func (cl CompressionLevel) String() string + type CompressionType string + func (ct CompressionType) ID() uint8 + type Connection interface + CallAlias func(from PID, to Alias, options MessageOptions, message any) error + CallPID func(from PID, to PID, options MessageOptions, message any) error + CallProcessID func(from PID, to ProcessID, options MessageOptions, message any) error + DemonitorAlias func(pid PID, target Alias) error + DemonitorEvent func(pid PID, targer Event) error + DemonitorPID func(pid PID, target PID) error + DemonitorProcessID func(pid PID, target ProcessID) error + Join func(c net.Conn, id string, dial NetworkDial, tail []byte) error + LinkAlias func(pid PID, target Alias) error + LinkEvent func(pid PID, target Event) ([]MessageEvent, error) + LinkPID func(pid PID, target PID) error + LinkProcessID func(pid PID, target ProcessID) error + MonitorAlias func(pid PID, target Alias) error + MonitorEvent func(pid PID, target Event) ([]MessageEvent, error) + MonitorPID func(pid PID, target PID) error + MonitorProcessID func(pid PID, target ProcessID) error + Node func() RemoteNode + RemoteSpawn func(name Atom, options ProcessOptionsExtra) (PID, error) + SendAlias func(from PID, to Alias, options MessageOptions, message any) error + SendEvent func(from PID, options MessageOptions, message MessageEvent) error + SendExit func(from PID, to PID, reason error) error + SendPID func(from PID, to PID, options MessageOptions, message any) error + SendProcessID func(from PID, to ProcessID, options MessageOptions, message any) error + SendResponse func(from PID, to PID, options MessageOptions, response any) error + SendResponseError func(from PID, to PID, options MessageOptions, err error) error + SendTerminateAlias func(target Alias, reason error) error + SendTerminateEvent func(target Event, reason error) error + SendTerminatePID func(target PID, reason error) error + SendTerminateProcessID func(target ProcessID, reason error) error + Terminate func(reason error) + UnlinkAlias func(pid PID, target Alias) error + UnlinkEvent func(pid PID, targer Event) error + UnlinkPID func(pid PID, target PID) error + UnlinkProcessID func(pid PID, target ProcessID) error + type Core interface + Creation func() int64 + EnvList func() map[Env]any + LogLevel func() LogLevel + MakeRef func() Ref + Name func() Atom + PID func() PID + RouteApplicationStart func(name Atom, mode ApplicationMode, options ApplicationOptionsExtra, source Atom) error + RouteCallAlias func(from PID, to Alias, options MessageOptions, message any) error + RouteCallPID func(from PID, to PID, options MessageOptions, message any) error + RouteCallProcessID func(from PID, to ProcessID, options MessageOptions, message any) error + RouteDemonitorAlias func(pid PID, target Alias) error + RouteDemonitorEvent func(pid PID, target Event) error + RouteDemonitorPID func(pid PID, target PID) error + RouteDemonitorProcessID func(pid PID, target ProcessID) error + RouteLinkAlias func(pid PID, target Alias) error + RouteLinkEvent func(pid PID, target Event) ([]MessageEvent, error) + RouteLinkPID func(pid PID, target PID) error + RouteLinkProcessID func(pid PID, target ProcessID) error + RouteMonitorAlias func(pid PID, target Alias) error + RouteMonitorEvent func(pid PID, target Event) ([]MessageEvent, error) + RouteMonitorPID func(pid PID, target PID) error + RouteMonitorProcessID func(pid PID, target ProcessID) error + RouteNodeDown func(node Atom, reason error) + RouteSendAlias func(from PID, to Alias, options MessageOptions, message any) error + RouteSendEvent func(from PID, token Ref, options MessageOptions, message MessageEvent) error + RouteSendExit func(from PID, to PID, reason error) error + RouteSendPID func(from PID, to PID, options MessageOptions, message any) error + RouteSendProcessID func(from PID, to ProcessID, options MessageOptions, message any) error + RouteSendResponse func(from PID, to PID, options MessageOptions, message any) error + RouteSendResponseError func(from PID, to PID, options MessageOptions, err error) error + RouteSpawn func(node Atom, name Atom, options ProcessOptionsExtra, source Atom) (PID, error) + RouteTerminateAlias func(terget Alias, reason error) error + RouteTerminateEvent func(target Event, reason error) error + RouteTerminatePID func(target PID, reason error) error + RouteTerminateProcessID func(target ProcessID, reason error) error + RouteUnlinkAlias func(pid PID, target Alias) error + RouteUnlinkEvent func(pid PID, target Event) error + RouteUnlinkPID func(pid PID, target PID) error + RouteUnlinkProcessID func(pid PID, target ProcessID) error + Security func() SecurityOptions + type DefaultLoggerOptions struct + Disable bool + Filter []LogLevel + IncludeBehavior bool + IncludeName bool + Output io.Writer + TimeFormat string + type Env string + func (e Env) MarshalJSON() ([]byte, error) + func (e Env) String() string + type Event struct + Name Atom + Node Atom + func (e Event) MarshalJSON() ([]byte, error) + func (e Event) String() string + type EventOptions struct + Buffer int + Notify bool + type HandshakeOptions struct + CertManager CertManager + Cookie string + Flags NetworkFlags + MaxMessageSize int + type HandshakeResult struct + AtomMapping map[Atom]Atom + ConnectionID string + Custom any + HandshakeVersion Version + NodeFlags NetworkFlags + NodeMaxMessageSize int + Peer Atom + PeerCreation int64 + PeerFlags NetworkFlags + PeerMaxMessageSize int + PeerVersion Version + Tail []byte + type Log interface + Debug func(format string, args ...any) + Error func(format string, args ...any) + Info func(format string, args ...any) + Level func() LogLevel + Logger func() string + Panic func(format string, args ...any) + SetLevel func(level LogLevel) error + SetLogger func(name string) + Trace func(format string, args ...any) + Warning func(format string, args ...any) + type LogLevel int + const LogLevelDebug + const LogLevelDefault + const LogLevelDisabled + const LogLevelError + const LogLevelInfo + const LogLevelPanic + const LogLevelSystem + const LogLevelTrace + const LogLevelWarning + func (l LogLevel) MarshalJSON() ([]byte, error) + func (l LogLevel) String() string + type LogOptions struct + DefaultLogger DefaultLoggerOptions + Level LogLevel + Loggers []Logger + type Logger struct + Filter []LogLevel + Logger LoggerBehavior + Name string + type LoggerBehavior interface + Log func(message MessageLog) + Terminate func() + func CreateDefaultLogger(options DefaultLoggerOptions) LoggerBehavior + type LoggerInfo struct + Behavior string + Levels []LogLevel + Name string + type MailboxMessage struct + From PID + Message any + Ref Ref + Target any + Type MailboxMessageType + func TakeMailboxMessage() *MailboxMessage + type MailboxMessageType int + const MailboxMessageTypeEvent + const MailboxMessageTypeExit + const MailboxMessageTypeInspect + const MailboxMessageTypeRegular + const MailboxMessageTypeRequest + type MailboxQueues struct + Log int64 + Main int64 + System int64 + Urgent int64 + type MessageDownAlias struct + Alias Alias + Reason error + type MessageDownEvent struct + Event Event + Reason error + type MessageDownNode struct + Name Atom + type MessageDownPID struct + PID PID + Reason error + type MessageDownProcessID struct + ProcessID ProcessID + Reason error + type MessageDownProxy struct + Node Atom + Proxy Atom + Reason error + type MessageEvent struct + Event Event + Message any + Timestamp int64 + type MessageEventStart struct + Name Atom + type MessageEventStop struct + Name Atom + type MessageExitAlias struct + Alias Alias + Reason error + type MessageExitEvent struct + Event Event + Reason error + type MessageExitNode struct + Name Atom + type MessageExitPID struct + PID PID + Reason error + type MessageExitProcessID struct + ProcessID ProcessID + Reason error + type MessageFallback struct + Message any + PID PID + Tag string + Target any + type MessageLog struct + Args []any + Format string + Level LogLevel + Source any + Time time.Time + type MessageLogMeta struct + Behavior string + Meta Alias + Node Atom + Parent PID + type MessageLogNetwork struct + Creation int64 + Node Atom + Peer Atom + type MessageLogNode struct + Creation int64 + Node Atom + type MessageLogProcess struct + Behavior string + Name Atom + Node Atom + PID PID + type MessageOptions struct + Compression Compression + ImportantDelivery bool + KeepNetworkOrder bool + Priority MessagePriority + Ref Ref + type MessagePriority int + const MessagePriorityHigh + const MessagePriorityMax + const MessagePriorityNormal + func (mp MessagePriority) MarshalJSON() ([]byte, error) + func (mp MessagePriority) String() string + type MetaBehavior interface + HandleCall func(from PID, ref Ref, request any) (any, error) + HandleInspect func(from PID, item ...string) map[string]string + HandleMessage func(from PID, message any) error + Init func(process MetaProcess) error + Start func() error + Terminate func(reason error) + type MetaInfo struct + Application Atom + Behavior string + ID Alias + LogLevel LogLevel + MailboxQueues MailboxQueues + MailboxSize int64 + MessagePriority MessagePriority + MessagesIn uint64 + MessagesOut uint64 + Parent PID + State MetaState + Uptime int64 + type MetaOptions struct + LogLevel LogLevel + MailboxSize int64 + SendPriority MessagePriority + type MetaProcess interface + Env func(name Env) (any, bool) + EnvList func() map[Env]any + ID func() Alias + Log func() Log + Parent func() PID + Send func(to any, message any) error + SendImportant func(to any, message any) error + SendWithPriority func(to any, message any, priority MessagePriority) error + Spawn func(behavior MetaBehavior, options MetaOptions) (Alias, error) + type MetaState int32 + const MetaStateRunning + const MetaStateSleep + const MetaStateTerminated + func (p MetaState) MarshalJSON() ([]byte, error) + func (p MetaState) String() string + type Network interface + Acceptors func() ([]Acceptor, error) + AddProxyRoute func(match string, proxy NetworkProxyRoute, weight int) error + AddRoute func(match string, route NetworkRoute, weight int) error + Cookie func() string + DisableApplicationStart func(name Atom, nodes ...Atom) error + DisableSpawn func(name Atom, nodes ...Atom) error + EnableApplicationStart func(name Atom, nodes ...Atom) error + EnableSpawn func(name Atom, factory ProcessFactory, nodes ...Atom) error + GetNode func(name Atom) (RemoteNode, error) + GetNodeWithRoute func(name Atom, route NetworkRoute) (RemoteNode, error) + Info func() (NetworkInfo, error) + MaxMessageSize func() int + Mode func() NetworkMode + NetworkFlags func() NetworkFlags + Node func(name Atom) (RemoteNode, error) + Nodes func() []Atom + ProxyRoute func(name Atom) ([]NetworkProxyRoute, error) + RegisterHandshake func(handshake NetworkHandshake) + RegisterProto func(proto NetworkProto) + Registrar func() (Registrar, error) + RemoveProxyRoute func(match string) error + RemoveRoute func(match string) error + Route func(name Atom) ([]NetworkRoute, error) + SetCookie func(cookie string) error + SetMaxMessageSize func(size int) + SetNetworkFlags func(flags NetworkFlags) + type NetworkApplicationStartInfo struct + Name Atom + Nodes []Atom + type NetworkDial func(dsn, id string) (net.Conn, []byte, error) + type NetworkFlags struct + Enable bool + EnableFragmentation bool + EnableImportantDelivery bool + EnableProxyAccept bool + EnableProxyTransit bool + EnableRemoteApplicationStart bool + EnableRemoteSpawn bool + func (nf *NetworkFlags) UnmarshalEDF(buf []byte) error + func (nf NetworkFlags) MarshalEDF(w io.Writer) error + type NetworkHandshake interface + Accept func(NodeHandshake, net.Conn, HandshakeOptions) (HandshakeResult, error) + Join func(NodeHandshake, net.Conn, string, HandshakeOptions) ([]byte, error) + NetworkFlags func() NetworkFlags + Start func(NodeHandshake, net.Conn, HandshakeOptions) (HandshakeResult, error) + Version func() Version + type NetworkInfo struct + Acceptors []AcceptorInfo + EnabledApplicationStart []NetworkApplicationStartInfo + EnabledSpawn []NetworkSpawnInfo + Flags NetworkFlags + HandshakeVersion Version + MaxMessageSize int + Mode NetworkMode + Nodes []Atom + ProtoVersion Version + ProxyRoutes []ProxyRouteInfo + Registrar RegistrarInfo + Routes []RouteInfo + type NetworkMode int + const NetworkModeDisabled + const NetworkModeEnabled + const NetworkModeHidden + func (nm NetworkMode) MarshalJSON() ([]byte, error) + func (nm NetworkMode) String() string + type NetworkOptions struct + Acceptors []AcceptorOptions + Cookie string + Flags NetworkFlags + Handshake NetworkHandshake + InsecureSkipVerify bool + MaxMessageSize int + Mode NetworkMode + Proto NetworkProto + ProxyAccept ProxyAcceptOptions + ProxyTransit ProxyTransitOptions + Registrar Registrar + type NetworkProto interface + NewConnection func(core Core, result HandshakeResult, log Log) (Connection, error) + Serve func(conn Connection, dial NetworkDial) error + Version func() Version + type NetworkProxyFlags struct + Enable bool + EnableEncryption bool + EnableImportantDelivery bool + EnableRemoteApplicationStart bool + EnableRemoteSpawn bool + func (npf *NetworkProxyFlags) UnmarshalEDF(buf []byte) error + func (npf NetworkProxyFlags) MarshalEDF(w io.Writer) error + type NetworkProxyRoute struct + Cookie string + Flags NetworkProxyFlags + MaxHop int + Resolver Resolver + Route ProxyRoute + type NetworkRoute struct + AtomMapping map[Atom]Atom + Cert CertManager + Cookie string + Flags NetworkFlags + InsecureSkipVerify bool + LogLevel LogLevel + Resolver Resolver + Route Route + type NetworkSpawnInfo struct + Behavior string + Name Atom + Nodes []Atom + type Node interface + ApplicationInfo func(name Atom) (ApplicationInfo, error) + ApplicationLoad func(app ApplicationBehavior, args ...any) (Atom, error) + ApplicationStart func(name Atom, options ApplicationOptions) error + ApplicationStartPermanent func(name Atom, options ApplicationOptions) error + ApplicationStartTemporary func(name Atom, options ApplicationOptions) error + ApplicationStartTransient func(name Atom, options ApplicationOptions) error + ApplicationStop func(name Atom) error + ApplicationStopForce func(name Atom) error + ApplicationStopWithTimeout func(name Atom, timeout time.Duration) error + ApplicationUnload func(name Atom) error + Applications func() []Atom + ApplicationsRunning func() []Atom + CertManager func() CertManager + Commercial func() []Version + Creation func() int64 + Env func(name Env) (any, bool) + EnvList func() map[Env]any + FrameworkVersion func() Version + Info func() (NodeInfo, error) + IsAlive func() bool + Kill func(pid PID) error + Log func() Log + LogLevelMeta func(meta Alias) (LogLevel, error) + LogLevelProcess func(pid PID) (LogLevel, error) + LoggerAdd func(name string, logger LoggerBehavior, filter ...LogLevel) error + LoggerAddPID func(pid PID, name string, filter ...LogLevel) error + LoggerDelete func(name string) + LoggerDeletePID func(pid PID) + LoggerLevels func(name string) []LogLevel + Loggers func() []string + MakeRef func() Ref + MetaInfo func(meta Alias) (MetaInfo, error) + Name func() Atom + Network func() Network + NetworkStart func(options NetworkOptions) error + NetworkStop func() error + PID func() PID + ProcessInfo func(pid PID) (ProcessInfo, error) + ProcessList func() ([]PID, error) + ProcessListShortInfo func(start, limit int) ([]ProcessShortInfo, error) + ProcessState func(pid PID) (ProcessState, error) + RegisterEvent func(name Atom, options EventOptions) (Ref, error) + RegisterName func(name Atom, pid PID) error + Security func() SecurityOptions + Send func(to any, message any) error + SendEvent func(name Atom, token Ref, options MessageOptions, message any) error + SendExit func(pid PID, reason error) error + SetCTRLC func(enable bool) + SetEnv func(name Env, value any) + SetLogLevelMeta func(meta Alias, level LogLevel) error + SetLogLevelProcess func(pid PID, level LogLevel) error + Spawn func(factory ProcessFactory, options ProcessOptions, args ...any) (PID, error) + SpawnRegister func(register Atom, factory ProcessFactory, options ProcessOptions, args ...any) (PID, error) + Stop func() + StopForce func() + UnregisterEvent func(name Atom) error + UnregisterName func(name Atom) (PID, error) + Uptime func() int64 + Version func() Version + Wait func() + WaitWithTimeout func(timeout time.Duration) error + type NodeHandshake interface + Creation func() int64 + Name func() Atom + Version func() Version + type NodeInfo struct + ApplicationsRunning int64 + ApplicationsTotal int64 + Commercial []Version + Env map[Env]any + Framework Version + LogLevel LogLevel + Loggers []LoggerInfo + MemoryAlloc uint64 + MemoryUsed uint64 + Name Atom + ProcessesRunning int64 + ProcessesTotal int64 + ProcessesZombee int64 + RegisteredAliases int64 + RegisteredEvents int64 + RegisteredNames int64 + SystemTime int64 + Uptime int64 + UserTime int64 + Version Version + type NodeOptions struct + Applications []ApplicationBehavior + CertManager CertManager + Env map[Env]any + Log LogOptions + Network NetworkOptions + Security SecurityOptions + Version Version + type NodeRegistrar interface + Log func() Log + Name func() Atom + RegisterEvent func(name Atom, options EventOptions) (Ref, error) + SendEvent func(name Atom, token Ref, options MessageOptions, message any) error + UnregisterEvent func(name Atom) error + type PID struct + Creation int64 + ID uint64 + Node Atom + func (p PID) MarshalJSON() ([]byte, error) + func (p PID) String() string + type Process interface + Aliases func() []Alias + Behavior func() ProcessBehavior + Call func(to any, message any) (any, error) + CallAlias func(to Alias, message any, timeout int) (any, error) + CallImportant func(to any, message any) (any, error) + CallPID func(to PID, message any, timeout int) (any, error) + CallProcessID func(to ProcessID, message any, timeout int) (any, error) + CallWithPriority func(to any, message any, priority MessagePriority) (any, error) + CallWithTimeout func(to any, message any, timeout int) (any, error) + Compression func() bool + CompressionLevel func() CompressionLevel + CompressionThreshold func() int + CompressionType func() CompressionType + CreateAlias func() (Alias, error) + DeleteAlias func(alias Alias) error + Demonitor func(target any) error + DemonitorAlias func(alias Alias) error + DemonitorEvent func(event Event) error + DemonitorNode func(node Atom) error + DemonitorPID func(pid PID) error + DemonitorProcessID func(process ProcessID) error + Env func(name Env) (any, bool) + EnvList func() map[Env]any + Events func() []Atom + Forward func(to PID, message *MailboxMessage, priority MessagePriority) error + ImportantDelivery func() bool + Info func() (ProcessInfo, error) + Inspect func(target PID, item ...string) (map[string]string, error) + InspectMeta func(meta Alias, item ...string) (map[string]string, error) + KeepNetworkOrder func() bool + Leader func() PID + Link func(target any) error + LinkAlias func(target Alias) error + LinkEvent func(target Event) ([]MessageEvent, error) + LinkNode func(target Atom) error + LinkPID func(target PID) error + LinkProcessID func(target ProcessID) error + Log func() Log + Mailbox func() ProcessMailbox + MetaInfo func(meta Alias) (MetaInfo, error) + Monitor func(target any) error + MonitorAlias func(alias Alias) error + MonitorEvent func(event Event) ([]MessageEvent, error) + MonitorNode func(node Atom) error + MonitorPID func(pid PID) error + MonitorProcessID func(process ProcessID) error + Name func() Atom + Node func() Node + PID func() PID + Parent func() PID + RegisterEvent func(name Atom, options EventOptions) (Ref, error) + RegisterName func(name Atom) error + RemoteSpawn func(node Atom, name Atom, options ProcessOptions, args ...any) (PID, error) + RemoteSpawnRegister func(node Atom, name Atom, register Atom, options ProcessOptions, args ...any) (PID, error) + Send func(to any, message any) error + SendAfter func(to any, message any, after time.Duration) (CancelFunc, error) + SendAlias func(to Alias, message any) error + SendEvent func(name Atom, token Ref, message any) error + SendExit func(to PID, reason error) error + SendExitMeta func(meta Alias, reason error) error + SendImportant func(to any, message any) error + SendPID func(to PID, message any) error + SendPriority func() MessagePriority + SendProcessID func(to ProcessID, message any) error + SendResponse func(to PID, ref Ref, message any) error + SendResponseError func(to PID, ref Ref, err error) error + SendWithPriority func(to any, message any, priority MessagePriority) error + SetCompression func(enabled bool) error + SetCompressionLevel func(level CompressionLevel) error + SetCompressionThreshold func(threshold int) error + SetCompressionType func(ctype CompressionType) error + SetEnv func(name Env, value any) + SetImportantDelivery func(important bool) error + SetKeepNetworkOrder func(order bool) error + SetSendPriority func(priority MessagePriority) error + Spawn func(factory ProcessFactory, options ProcessOptions, args ...any) (PID, error) + SpawnMeta func(behavior MetaBehavior, options MetaOptions) (Alias, error) + SpawnRegister func(register Atom, factory ProcessFactory, options ProcessOptions, args ...any) (PID, error) + State func() ProcessState + Unlink func(target any) error + UnlinkAlias func(target Alias) error + UnlinkEvent func(target Event) error + UnlinkNode func(target Atom) error + UnlinkPID func(target PID) error + UnlinkProcessID func(target ProcessID) error + UnregisterEvent func(name Atom) error + UnregisterName func() error + Uptime func() int64 + type ProcessBehavior interface + ProcessInit func(process Process, args ...any) error + ProcessRun func() error + ProcessTerminate func(reason error) + type ProcessFactory func() ProcessBehavior + type ProcessFallback struct + Enable bool + Name Atom + Tag string + type ProcessID struct + Name Atom + Node Atom + func (p ProcessID) MarshalJSON() ([]byte, error) + func (p ProcessID) String() string + type ProcessInfo struct + Aliases []Alias + Application Atom + Behavior string + Compression Compression + Env map[Env]any + Events []Atom + Fallback ProcessFallback + ImportantDelivery bool + KeepNetworkOrder bool + Leader PID + LinksAlias []Alias + LinksEvent []Event + LinksNode []Atom + LinksPID []PID + LinksProcessID []ProcessID + LogLevel LogLevel + MailboxQueues MailboxQueues + MailboxSize int64 + MessagePriority MessagePriority + MessagesIn uint64 + MessagesOut uint64 + Metas []Alias + MonitorsAlias []Alias + MonitorsEvent []Event + MonitorsNode []Atom + MonitorsPID []PID + MonitorsProcessID []ProcessID + Name Atom + PID PID + Parent PID + RunningTime uint64 + State ProcessState + Uptime int64 + type ProcessMailbox struct + Log lib.QueueMPSC + Main lib.QueueMPSC + System lib.QueueMPSC + Urgent lib.QueueMPSC + type ProcessOptions struct + Compression Compression + Env map[Env]any + Fallback ProcessFallback + ImportantDelivery bool + Leader PID + LinkChild bool + LinkParent bool + LogLevel LogLevel + MailboxSize int64 + SendPriority MessagePriority + type ProcessOptionsExtra struct + Application Atom + Args []any + ParentEnv map[Env]any + ParentLeader PID + ParentLogLevel LogLevel + ParentPID PID + Register Atom + type ProcessShortInfo struct + Application Atom + Behavior string + Leader PID + LogLevel LogLevel + MessagesIn uint64 + MessagesMailbox uint64 + MessagesOut uint64 + Name Atom + PID PID + Parent PID + RunningTime uint64 + State ProcessState + Uptime int64 + type ProcessState int32 + const ProcessStateInit + const ProcessStateRunning + const ProcessStateSleep + const ProcessStateTerminated + const ProcessStateWaitResponse + const ProcessStateZombee + func (p ProcessState) MarshalJSON() ([]byte, error) + func (p ProcessState) String() string + type ProxyAcceptOptions struct + Cookie string + Flags NetworkProxyFlags + type ProxyRoute struct + Proxy Atom + To Atom + type ProxyRouteInfo struct + Flags NetworkProxyFlags + Match string + MaxHop int + Proxy Atom + UseCustomCookie bool + UseResolver bool + Weight int + type ProxyTransitOptions struct + type Ref struct + Creation int64 + ID [3]uint64 + Node Atom + func (r Ref) MarshalJSON() ([]byte, error) + func (r Ref) String() string + type RegisterRoutes struct + ApplicationRoutes []ApplicationRoute + ProxyRoutes []ProxyRoute + Routes []Route + type Registrar interface + Config func(items ...string) (map[string]any, error) + ConfigItem func(item string) (any, error) + Event func() (Event, error) + Info func() RegistrarInfo + Nodes func() ([]Atom, error) + Register func(node NodeRegistrar, routes RegisterRoutes) (StaticRoutes, error) + RegisterApplicationRoute func(route ApplicationRoute) error + RegisterProxy func(to Atom) error + Resolver func() Resolver + Terminate func() + UnregisterApplicationRoute func(name Atom) error + UnregisterProxy func(to Atom) error + Version func() Version + type RegistrarConfig struct + Config map[string]any + LastUpdate int64 + type RegistrarInfo struct + EmbeddedServer bool + Server string + SupportConfig bool + SupportEvent bool + SupportRegisterApplication bool + SupportRegisterProxy bool + Version Version + type RemoteNode interface + ApplicationStart func(name Atom, options ApplicationOptions) error + ApplicationStartPermanent func(name Atom, options ApplicationOptions) error + ApplicationStartTemporary func(name Atom, options ApplicationOptions) error + ApplicationStartTransient func(name Atom, options ApplicationOptions) error + ConnectionUptime func() int64 + Creation func() int64 + Disconnect func() + Info func() RemoteNodeInfo + Name func() Atom + Spawn func(name Atom, options ProcessOptions, args ...any) (PID, error) + SpawnRegister func(register Atom, name Atom, options ProcessOptions, args ...any) (PID, error) + Uptime func() int64 + Version func() Version + type RemoteNodeInfo struct + BytesIn uint64 + BytesOut uint64 + ConnectionUptime int64 + HandshakeVersion Version + MaxMessageSize int + MessagesIn uint64 + MessagesOut uint64 + NetworkFlags NetworkFlags + Node Atom + PoolDSN []string + PoolSize int + ProtoVersion Version + TransitBytesIn uint64 + TransitBytesOut uint64 + Uptime int64 + Version Version + type Resolver interface + Resolve func(node Atom) ([]Route, error) + ResolveApplication func(name Atom) ([]ApplicationRoute, error) + ResolveProxy func(node Atom) ([]ProxyRoute, error) + type Route struct + HandshakeVersion Version + Host string + Port uint16 + ProtoVersion Version + TLS bool + type RouteInfo struct + Flags NetworkFlags + HandshakeVersion Version + Host string + Match string + Port uint16 + ProtoVersion Version + UseCustomCert bool + UseCustomCookie bool + UseResolver bool + Weight int + type SecurityOptions struct + ExposeEnvInfo bool + ExposeEnvRemoteApplicationStart bool + ExposeEnvRemoteSpawn bool + type StaticRoutes struct + Proxies map[string]NetworkProxyRoute + Routes map[string]NetworkRoute + type Version struct + Commit string + License string + Name string + Release string + func (v Version) Str() string + func (v Version) String() string