Package frost
Package frost.collections
- Array
- Standard implementation of the
List
interface.
- Collection
- A read/write collection of elements.
- CollectionView
- A read-only view of a collection of elements.
- CollectionWriter
- A write-only view of a collection of elements.
- DefaultHashMap
- As
HashMap
, but additionally has a default value which is returned for keys which are not present
in the map.
- HashKey
- Provides functionality necessary for being used as a key in a
HashMap
or HashSet
.
- HashMap
- Standard implementation of the
Map
interface, which associates keys with values.
- HashSet
- An implementation of the set abstract data type.
- IdentityMap
- A
Map
which compares its keys using identity (==
) instead of equality (=
).
- IdentitySet
- A
Set
which compares its entries using identity (==
) instead of equality (=
).
- ImmutableArray
- An immutable version of
Array
.
- Iterable
- Provides the ability to create an
Iterator
over some collection of objects.
- Iterator
- Returns a collection of objects one at a time.
- List
- A read/write random-access list of elements.
- ListView
- A random-access
CollectionView
with numbered elements.
- ListWriter
- A write-only view of a list of elements.
- Map
- The standard "Map" abstract data type, which stores key/value pairs such that no key appears more
than once in the collection.
- MapView
- A read-only view of the standard "Map" abstract data type, which stores key/value pairs such that no
key appears more than once in the collection.
- MapWriter
- A write-only version of the standard
Map
abstract data type.
- Stack
- An implementation of the stack abstract data type.
Package frost.core
- Bit
- Char16
- Represents a single 2-byte word of a UTF-16 encoded string.
- Char32
- Represents any Unicode codepoint in the entire range from 0 to 1,114,112.
- Char8
- Depending on context, represents either a Unicode codepoint in the range 0 to 255 or a single byte
of a UTF-8 encoded string.
- Comparable
- Interface for objects which can be compared for equality and ordering.
- Equatable
- Interface for objects which can be compared for equality.
- Error
- Returned by methods to indicate that they encountered an error.
- Formattable
- Provides the
format
function, which allows objects to be formatted according to a format string.
- Immutable
- Marks objects whose fields cannot be modified after creation.
- Int
- A signed 32 or 64 bit integer, as appropriate for the target architecture.
- Int16
- A 16-bit signed integer.
- Int32
- A 32-bit signed integer.
- Int64
- A 64-bit signed integer.
- Int8
- An 8-bit signed integer.
- Matcher
- Represents the process of scanning a string for matches to a regular expression.
- Maybe
- Holds either a value or an
Error
.
- MutableString
- A mutable variant of
String
.
- MutableValue
- As
Value
, but permits mutable fields.
- Object
- The root of the Frost class heirarchy.
- Range
- Represents a range between two values.
- Real32
- A 32-bit floating point number.
- Real64
- A 64-bit floating point number.
- RegularExpression
- Represents a regular expression that can be used for matching and parsing strings.
- SteppedRange
- Similar to
Range
, but with a step
value that indicates the number of steps to take during each
iteration.
- String
- An immutable sequence of Unicode codepoints.
- System
- Provides utility methods that interface with the operating environment.
- UInt
- an unsigned 32 or 64 bit integer, as appropriate for the target architecture.
- UInt16
- A 16-bit unsigned integer.
- UInt32
- A 32-bit unsigned integer.
- UInt64
- A 64-bit unsigned integer.
- UInt8
- An 8-bit unsigned integer.
- Value
- Represents objects which may be passed by value instead of by reference.
- Weak
- Holds a weak reference to an object.
Package frost.io
- ByteOrder
- Describes the byte order of multi-byte values when read from or written to a stream.
- Console
- Provides access to the standard input, output, and error streams.
- File
- Represents a file path, providing methods to query, read, and write files.
- IndentedOutputStream
- An output stream which indents the lines it writes.
- InputStream
- A stream of binary or character data which can be read from.
- LineNumberInputStream
- A
InputStream
which sits on top of another stream, tracking the current line and column as it
reads from the underlying stream.
- MemoryInputStream
- An
InputStream
which reads from a String
.
- MemoryOutputStream
- An
OutputStream
which stores the data written to it in a memory buffer.
- OutputStream
- A stream of binary or character data which can be written to.
- PushbackInputStream
- An input stream which allows data to be "pushed back" into it, so that it may be read again.
Package frost.math
- Random
- Provices methods for calculating pseudorandom numbers.
- XorShift128Plus
- A fast pseudorandom number generator using a XorShift+ algorithm with a period of 2^128 - 1.
Package frost.threads
- Lock
- A lock (mutex) which allows multiple threads to coordinate access to a shared resource.
- MessageQueue
- A queue which can be shared between multiple
Thread
s, allowing any of them to submit messages to
or pull messages out of it.
- Notifier
- A condition variable which helps multiple
Thread
s coordinate their scheduling.
- ScopedLock
- An object which holds onto a
Lock
as long as the ScopedLock
itself continues to exist.
- Thread
- Represents a thread of execution within a program.
Package frost.time
- Timer
- A high-resolution timer which measures time either from the epoch (midnight UTC on January 1st,
1970) or between two events.
Package frost.unsafe
- Pointer
- Represents a system-level pointer to a block of memory.
- UnsafeMessageQueue
- A message queue which allows mutable objects to be passed between threads, violating the normal
Frost assumption that a mutable object is accessible only from a single thread.