package vault
- Alphabetic
- Public
- All
Type Members
-
final
class
Key[A] extends AnyRef
A unique value tagged with a specific type to that unique.
A unique value tagged with a specific type to that unique. Since it can only be created as a result of that, it links a Unique identifier to a type known by the compiler.
-
final
class
Locker extends AnyRef
Locker - A persistent store for a single value.
Locker - A persistent store for a single value. This utilizes the fact that a unique is linked to a type. Since the key is linked to a type, then we can cast the value to Any, and join it to the Unique. Then if we are then asked to unlock this locker with the same unique, we know that the type MUST be the type of the Key, so we can bring it back as that type safely.
-
final
class
Vault extends AnyRef
Vault - A persistent store for values of arbitrary types.
Vault - A persistent store for values of arbitrary types. This extends the behavior of the locker, into a Map that maps Keys to Lockers, creating a heterogenous store of values, accessible by keys. Such that the Vault has no type information, all the type information is contained in the keys.