46 Commits (bd22305f7715bd2a7c460a846f65e6d23c302ac5)

Author SHA1 Message Date
Avril 8eb88a65b4
Added attr retain to dynctors. Dunno if this does anything, but it doesn"t complain and still works.
3 years ago
Avril 4da128e510
Moved dynctor registration into `rng.cpp` (seems to work in *this* TU too. Why not `rng/sm64.cpp` specifically???? very annoying.)
3 years ago
Avril 3165ef13fd
Hack to work arround dynctor not being registered when not defined in `crand.cpp" (no idea why, the symbol exists. looking into it.)
3 years ago
Avril dfb3d74816
Added SM64 engine to C hard-coded new API
3 years ago
Avril 86b855bda3
Added seeding interface.
3 years ago
Avril d9e34e7e70
Start: Seeding API
3 years ago
Avril 3ff3db0e3e
C++ iterators are absolute retarded shite. Their ```design""" makes no sense.
3 years ago
Avril b071cbb1ad
Added `nexta[m]` array handling functions.
3 years ago
Avril 5a4b68ab3f
Started implementing next for arrays.
3 years ago
Avril 1cf5ca05b2 Added noexcept to global dtor & ctor
3 years ago
Avril 4b988ba83b Added name-based runtime engine lookup.
3 years ago
Avril ebc16f5638 C API: Added individual primitive types `rng_next_*()`
3 years ago
Avril 25c86023a9
Fix common.h type alias issue
3 years ago
Avril 9ebf0384a5 C API basic test
3 years ago
Avril 29187574be
C API added
3 years ago
Avril ed1f1d5f03
C API: Start `next` shim
3 years ago
Avril fc70397536
C API: Type spec and flags (start)
3 years ago
Avril af095e2a41
Small cleanup
3 years ago
Avril c38d58b7fe
Rework C API shim. Now bridges: librngxx (main library C++ interface) @ rngxx.hpp -> >|capi-bridge.cpp <-> capi-bridge.h <-> capi.c|> -> rngxx.h
3 years ago
Avril d51eb30b6b
C API start
3 years ago
Avril f193acd2ea
Fixed internal header problems (hopefully...)
3 years ago
Avril 7733ada38b
Fixed some namespace pollution issues
3 years ago
Avril aea2c6b837
Merge branch 'lib'
3 years ago
Avril 54dfb64596
Renamed API header & API header location /include
3 years ago
Avril df0fbadf3b
Reorganised /include
3 years ago
Avril 2281a57bc9
Hack to get arround the retarded name-based hiding in derrived class overrides fucking up name base name lookups.
3 years ago
Avril 9b2b2468cc
Why can"t I call Random:: functions from an instance of derrived class crand???
3 years ago
Avril 5f57115683
Vectorised next_bytes(), next_v*().
3 years ago
Avril acc580e031
Random: Added `next_*(min, max)`
3 years ago
Avril 800e0ad13b
<range.h> util::range: Added out-of-place clamp `T clamped(const)` and `T clamped(&&)`.
3 years ago
Avril a9bc96294a
Working util::range type and bounded range-scale API!
3 years ago
Avril 5d69550fff
Fucking hell... First "attempt" at range API... it doesn"t look good :/
3 years ago
Avril 7eaba3c1b3
Added `aligned_ptr<T>::container_address([const] Self&) -> [const] Self*` to offset the overloaded unary & and avoid need of `std::addressof`.
3 years ago
Avril fe55da9a5a
Improved ergonomics for aligned_ptr pointer handling
3 years ago
Avril ed966944b8
Added likeliness annotations to some nullptr checks
3 years ago
Avril ef25f978ff
Added attrs to internal-exported C API header
3 years ago
Avril b35c0f705d
Added internal visibility modifier to internal C APIs
3 years ago
Avril 8e20b86365 crand::_sample() uniformly distributes between 0..1
3 years ago
Avril b59c0671d2
Added ranges to Random base.
3 years ago
Avril 977e32c711
crand: started integer rng overrides
3 years ago
Avril c8622410d8
crand: raw sample ok
3 years ago
Avril ea4538231e
Fix incorrect uint48_t sizing.
3 years ago
Avril 2b24ab0408
All that aligned_ptr<bullshit> work for nothing huh...
3 years ago
Avril 3b1628d396
Added mem::aligned_ptr<T> wrapper
3 years ago
Avril 7bd7964d98
Random::iterator<T> skel
3 years ago
Avril ff8c729ef7 Initial commit
3 years ago