Standard Library Reference

This is an index page for the Guardian standard library.

List of Classes

Guard

The basic synchronization primitive. Also contains many static methods relevant to GuardVar and Cond.


GuardVar

Protects a value behind a Guard. The most basic way of protecting an unsafe type so it can be shared between threads.

Var

A simple wrapper around any type. This is used by a GuardVar to provide access to its value inside a task.


Cond

Forms a condition variable over one or many GuardVars. This allows a task to be retried until a condition is met.


Pool

The thread pool; the root of all parallelism in Guardian. The most basic way to launch tasks asynchronously.


Fut

A future, i.e., a value that will become available contingent on the completion of an asynchronous task.


Loop

Houses static methods for creating asynchronous loops.


CountdownLatch

A way to schedule continuations based on the completion of a specific number of tasks (units of work).


Array

A fixed-size array. The basic Array type is unsafe and shallowly immutable. Arrays also come in the following flavors:


List

A dynamically sized, growable, unsafe list.


PartList

A mutable, fixed-size list with machinery for splitting up work across multiple threads.

ReadPartView

A read-only slice of a PartList.

WritePartView

A write-only slice of a PartList.

ReadWritePartView

A read-write slice of a PartList.

ReadPartIntent

Indicates that a PartList should be partitioned into read-only views.

WritePartIntent

Indicates that a PartList should be partitioned into write-only views.

ReadWritePartIntent

Indicates that a PartList should be partitioned into read-write views.


Random

A (pseudo-)random number generator.


Out

A way to send output to the console.