Crate monolithium

Crate monolithium 

Source

Re-exports§

pub use rng::JavaRNG;
pub use monolith::*;
pub use perlin::*;
pub use seeds::*;
pub use utils::*;
pub use world::*;

Modules§

commands
monolith
mpsc
Multi-producer, single-consumer FIFO queue communication primitives.
perlin
rng
seeds
thread
Native threads.
utils
world

Structs§

AHashSet
A HashSet using RandomState to hash the items. (Requires the std feature to be enabled.)
Arc
A thread-safe reference-counting pointer. ‘Arc’ stands for ‘Atomically Reference Counted’.
HashSet
A hash set implemented as a HashMap where the value is ().
Mutex
A mutual exclusion primitive useful for protecting shared data
OnceLock
A synchronization primitive which can nominally be written to only once.
ProgressBar
A progress bar or spinner
ProgressStyle
VecDeque
A double-ended queue implemented with a growable ring buffer.

Enums§

Ordering
An Ordering is the result of a comparison between two values.

Constants§

DEPTH_WRAPS
Distance in which the depth noise wraps around
FARLANDS
Coordinate at which the Far Lands start
HILL_WRAPS
Distance in which the hill noise wraps around
MONOLITHS_REPEAT
It was found experimentally that the perlin noise and monoliths wraps around every 2**23 blocks, drastically reducing the practical search space!
TOTAL_SEEDS
Java uses a 48-bit Linear Congruential Generator for its RNG, which continuously masks the state’s (1 << 48) - 1 lower bits, meaning there’s effectively only 2**48 unique seeds!
WORLD_SIZE
Lateral size of the inbounds worlds within the Far Lands

Traits§

Deserialize
A data structure that can be deserialized from any data format supported by Serde.
FromParallelIterator
FromParallelIterator implements the creation of a collection from a ParallelIterator. By implementing FromParallelIterator for a given type, you define how it will be created from an iterator.
Hash
A hashable type.
Hasher
A trait for hashing an arbitrary stream of bytes.
IndexedParallelIterator
An iterator that supports “random access” to its data, meaning that you can split it at arbitrary indices and draw data from those points.
IntoParallelIterator
IntoParallelIterator implements the conversion to a ParallelIterator.
IntoParallelRefIterator
IntoParallelRefIterator implements the conversion to a ParallelIterator, providing shared references to the data.
IntoParallelRefMutIterator
IntoParallelRefMutIterator implements the conversion to a ParallelIterator, providing mutable references to the data.
ParallelBridge
Conversion trait to convert an Iterator to a ParallelIterator.
ParallelDrainFull
ParallelDrainFull creates a parallel iterator that moves all items from a collection while retaining the original capacity.
ParallelDrainRange
ParallelDrainRange creates a parallel iterator that moves a range of items from a collection while retaining the original capacity.
ParallelExtend
ParallelExtend extends an existing collection with items from a ParallelIterator.
ParallelIterator
Parallel version of the standard iterator trait.
ParallelProgressIterator
Wraps a Rayon parallel iterator.
ParallelSlice
Parallel extensions for slices.
ParallelSliceMut
Parallel extensions for mutable slices.
ParallelString
Parallel extensions for strings.
Parser
Parse command-line arguments into Self.
Serialize
A data structure that can be serialized into any data format supported by Serde.
Subcommand
Parse a sub-command into a user-defined enum.

Functions§

max
Compares and returns the maximum of two values.
min
Compares and returns the minimum of two values.

Type Aliases§

Seed

Derive Macros§

Deserialize
Hash
Derive macro generating an impl of the trait Hash.
Parser
Generates the Parser implementation.
Serialize
SmartDefault
Smart Default
Subcommand
Generates the Subcommand impl.