Expand description
References for different resources in Hyperactor.
The “Id” variants are transparent and typeless, whereas the
corresponding “Ref” variants are opaque and typed. The latter intended
to be exposed in user-facing APIs. We provide std::convert::From
implementations between Id and Refs where this makes sense.
All system implementations use the same concrete reference representations, as their specific layout (e.g., actor index, rank, etc.) are used by the core communications algorithms throughout.
References and ids are crate::Message
s to facilitate passing
them between actors.
Macros§
- id
- Statically create a
WorldId
,ProcId
,ActorId
orGangId
, given the concrete syntax documented inReference
:
Structs§
- ActorId
- Actors are identified by their proc, their name, and pid.
- Actor
Ref - ActorRefs are typed references to actors.
- GangId
- Gangs identify a gang of actors across the world.
- GangRef
- GangRefs are typed references to gangs.
- Once
Port Ref - A remote reference to a [
OncePort
]. References are serializable and may be passed to remote actors, which can then use it to send a message to this port. - PortId
- Port ids identify [
crate::mailbox::Port
]s of an actor. - PortRef
- A reference to a remote port. All messages passed through PortRefs will be serialized.
- Unbound
Port - The parameters extracted from
PortRef
toBindings
. - WorldId
- WorldId identifies a world within a [
crate::system::System
]. The index of a World uniquely identifies it within a system instance.
Enums§
- ProcId
- Procs are identified by their rank within a world or by a direct channel address. Each proc represents an actor runtime that can locally route to all of its constituent actors.
- Reference
- A universal reference to hierarchical identifiers in Hyperactor.
- Reference
Parsing Error - The type of error encountered while parsing references.
Type Aliases§
- Index
- Index is a type alias representing a value that can be used as an index into a sequence.