Expand description
Universal identifier types for the actor system.
Concrete grammar:
label := lowercase letter, then lowercase letters, digits, `-`, or `_`,
ending in a lowercase letter or digit
uid58 := base58(u64) using the Flickr alphabet
uid := label | "<" uid58 ">"
proc-id := label | "<" uid58 ">" | label "<" uid58 ">"
actor-id := actor-part "." proc-id
actor-part := label | "<" uid58 ">" | label "<" uid58 ">"
port-id := actor-id ":" decimal-portSingletons are self-documenting and therefore display as bare labels.
Non-singleton ids display their semantic label, if any, outside the uid:
label<uid58>. Unlabeled instances display as <uid58>.
Label is an RFC 1035-style label: up to 63 lowercase alphanumeric
characters plus - or _, starting with a letter and ending with an
alphanumeric.
Uid is either a singleton (identified by label) or an instance
(identified by a random u64, with an optional label for display).
Structs§
- ActorId
- Identifies an actor within a process.
- Label
- An RFC 1035-style label: 1–63 chars, lowercase ASCII alphanumeric plus
-or_, starting with a letter, ending with an alphanumeric character. - PortId
- Identifies a port on an actor.
- ProcId
- Identifies a process in the actor system.
Enums§
- Id
- A Hyperactor id.
- IdParse
Error - Errors that can occur when parsing a
ProcIdorActorIdfrom a string. - Label
Error - Errors that can occur when constructing a
Label. - Uid
- A unique identifier.
- UidParse
Error - Errors that can occur when parsing a
Uidfrom a string.