| Age | Commit message (Collapse) | Author |
|
This gives you an easy way to produce an IHolder, without having to
explicitly construct an instance of Identity
|
|
|
|
Added a static function 'of' to IMap to allow you to more easily create
a map from a list of key-value pairs. However, misuse of this method can
result in getting ClassCastExceptions at some later point, because it
has to use Object var-args + an unsafe generic cast.
So, be careful, I suppose; and please make sure your argument types are
correct.
|
|
|
|
IMap has some default methods that its various implementations were
overriding when they didn't need to
|
|
|
|
This adds a new interface IFreezable, which denotes that your object
supports being 'frozen' (immutable) or 'thawed' (mutable). There is also
optional support for 'deep-freezing' objects, which disables the ability
to thaw them.
It also introduces a new exception called ObjectFrozen, which
implementations of IFreezable may or may not throw when you attempt to
modify a frozen object
|
|
Adds two additional function types which make picking a single element
from an array of elements easier.
Currently, a generic one is provided that works for all reference types,
and a variant specialized for primitive ints is also provided.
|
|
This is a list wrapper that automatically tracks the minimum/maximum
element currently in the list
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Clean up the tests for BooleanToggle, and add a basic test for Either
|
|
Adds ResettableIterator, an iterator type which caches the elements it
iterates over, so as to allow you to re-iterate over them at your
leisure.
Note that because this works by caching, it can consume large amounts of
memory if used on large iterators.
In general, I would suggest only using this on medium-sized or smaller
iterators you know you want to re-iterate over.
|
|
|
|
|
|
|
|
Pass to do some cleanups
|
|
This applies the changes that were necessary to complete the extraction
of these packages from bjc-utils
|
|
Cleanup some warnings
|
|
Cleanup some warnings
|
|
This reimplements the old AbbrevMap structure as AbbrevMap2, and created
a new Multimap structure as a apart of it.
Multimap is exactly what it sounds like; a map that allows multiple
values for a given key. The only real thing that is different about it,
is that if you add a key-value pair multiple times, you'll have to
remove it multiple times.
|
|
|
|
|
|
|
|
|
|
The package root is now bjc, not io.github.bculkin2442.
|