Lioncash
a7bd496698
hecl/hecl: Remove pointer casts from Hash constructor interface
...
The interface accepts const void* as the input type, so there's no need
to explicitly pointer cast the input data.
2019-08-24 02:55:09 -04:00
Lioncash
e127fed0fd
hecl/hecl: Mark Hash interface as noexcept
...
These are utilized within some hash implementations, which shouldn't
throw, so these member functions can be marked as noexcept.
2019-08-24 02:52:27 -04:00
Lioncash
09fe937bc3
hecl/hecl: Make hash_combine_impl noexcept
...
This is used to implement hashes, and since hash implementations
shouldn't throw, these shouldn't as well.
2019-08-24 02:46:47 -04:00
Lioncash
f957dd594b
hecl/hecl: Mark byte swapping functions as noexcept
...
These are frequently used within hash implementations, which should be
noexcept by default. Given it doesn't make sense to throw exceptions
from these functions anyways, they can be made noexcept.
2019-08-24 02:46:44 -04:00
Phillip Stephens
e12e0057c3
Minor compile fixes
2019-08-23 16:58:15 -07:00
Phillip Stephens
ff7e95546b
Merge pull request #16 from lioncash/string
...
hecl/Compilers: Amend minor string related code
2019-08-23 16:36:53 -07:00
Phillip Stephens
3a73ce7051
Merge pull request #17 from lioncash/connect
...
Connection: Minor miscellaneous changes
2019-08-23 16:36:13 -07:00
Lioncash
2d7dd9bf5b
Connection: Collapse emplace_back(), back() pairs
...
emplace_back() already returns a reference to the constructed member, so
we don't need to query it via back() again.
2019-08-23 14:02:18 -04:00
Lioncash
cbcfdcb67a
Connection: Eliminate variable shadowing
...
Amends trivial cases of variable shadowing.
2019-08-23 13:56:11 -04:00
Lioncash
11b3bf0889
Connection: Alphabetize friend class/struct declarations
2019-08-23 13:44:33 -04:00
Lioncash
6492117d60
Connection: Remove <iostream> include
...
Avoids injecting a static constructor into translation units including
this source file, even if nothing in the source file uses the iostream
facilities.
Instead, we can replace this with an ostream include. While we're at it,
we can make sure we include everything necessary within the source file.
2019-08-23 13:44:30 -04:00
Lioncash
877ca7ad87
Connection: Make use of std::array where applicable
...
Uses std::array in place of C arrays where not used as a buffer.
2019-08-23 12:44:55 -04:00
Lioncash
a3caa28483
Connection: Collapse definition of operator== for Vert
...
This can be collapsed down to a single tie comparison
2019-08-23 12:32:13 -04:00
Lioncash
8fdd9a15c4
Connection: Collapse VertInBank into std::any_of
...
Same thing, single line.
2019-08-23 12:26:14 -04:00
Lioncash
5d30a9d7ea
Connection: Use nullptr instead of NULL where applicable
...
Same behavior, stronger typing.
2019-08-23 12:08:08 -04:00
Lioncash
2e16f882d2
hecl/Compilers: Make use of nullptr over NULL
...
Same behavior, stricter type.
2019-08-23 11:56:37 -04:00
Lioncash
d59d453db3
hecl/Compilers: Convert fprintf calls over to fmt::print
...
Makes the Metal code more consistent with the other compilers. While
we're at it we can also fix accidental printf leftovers within the
existing fmt format strings.
2019-08-23 11:53:39 -04:00
Lioncash
73cf8df409
hecl/Compilers: Convert printf call over to fmt::print
...
Same behavior, but properly handles the case where the given string_view
may not be null terminated.
2019-08-23 11:49:55 -04:00
Lioncash
3b60cee576
hecl/Compilers: Make name strings constexpr
...
Same behavior (as of C++17), without the need to duplicate the variable
name.
2019-08-23 11:42:12 -04:00
Phillip Stephens
e691b95cbf
Merge pull request #15 from lioncash/file
...
hecl/hecl: Introduce FopenUnique
2019-08-21 23:16:25 -07:00
Phillip Stephens
5b5d443410
Merge pull request #12 from lioncash/bool
...
General: Make operator bool() explicit where applicable
2019-08-21 22:23:58 -07:00
Lioncash
fb9e4df372
hecl: Make use of FopenUnique
...
Makes use of the introduced API function to eliminate the need to
explicit fclose FILE* instances.
2019-08-22 01:16:48 -04:00
Lioncash
7bb3912d39
General: Make operator bool() explicit where applicable
...
Makes conversions to bool slightly less error-prone by requiring them to
be explicit in non-obvious contexts.
2019-08-22 01:15:38 -04:00
Phillip Stephens
120ed20bfa
Merge pull request #14 from lioncash/string
...
Connection: Replace std::string _writeStr overload with std::string_view
2019-08-21 20:23:56 -07:00
Phillip Stephens
3ef555dba4
Merge pull request #11 from lioncash/lock
...
General: Make use of lock deduction guides
2019-08-21 20:23:43 -07:00
Phillip Stephens
3177d356ec
Merge pull request #13 from lioncash/override
...
General: Use override where applicable
2019-08-21 20:23:18 -07:00
Lioncash
9dcf7e7f08
hecl/hecl: Add smart pointer variant of Fopen
...
Provides a wrapper API over Fopen in order to prevent resource leaks.
2019-08-21 19:28:14 -04:00
Lioncash
d00cb36fc2
Connection: Amend clang-format discrepancies
2019-08-21 19:16:46 -04:00
Lioncash
ac4858b857
Connection: Replace usages of goto
2019-08-21 19:16:02 -04:00
Lioncash
6c9fdfcbb7
Connection: Replace std::string _writeStr override with std::string_view
...
Same thing, but usable without the need to construct a std::string
instance for things like string literals.
2019-08-21 18:30:07 -04:00
Lioncash
5d157e97b3
General: Use override where applicable
2019-08-21 18:20:07 -04:00
Lioncash
82109b785d
General: Make use of lock deduction guides
...
Allows dehardcoding the type within the locks.
2019-08-21 17:01:03 -04:00
Phillip Stephens
bcfea9a09a
Merge pull request #10 from lioncash/cv
...
CVar: Remove redundant const return for toLiteral() and toWideLiteral()
2019-08-20 19:31:06 -07:00
Lioncash
b9e5417a94
CVar: Remove redundant const return for toLiteral() and toWideLiteral()
...
This can actually inhibit copy elision
2019-08-20 10:15:14 -04:00
Phillip Stephens
f9bda234fa
Update submodules
2019-08-20 06:57:52 -07:00
Phillip Stephens
138ab07089
Merge pull request #9 from lioncash/cvar
...
CVarManager: Minor changes
2019-08-20 06:56:24 -07:00
Phillip Stephens
31e9ee50b9
Merge pull request #8 from lioncash/db
...
Database: Minor cleanup
2019-08-20 06:56:17 -07:00
Lioncash
645f20c308
CVarManager: Deduplicate repetitive names
...
We can just assign the repeated portion of the expression to a reference
instead of continually re-accessing the same variable, making it nicer
to read.
2019-08-20 06:29:17 -04:00
Lioncash
cfced1bf0a
CVarManager: Eliminate redundant map lookups
...
We can simply utilize the iterator of the previous existence check to
access the member instead of hashing through the map again.
2019-08-20 06:23:25 -04:00
Lioncash
4818198e41
CVarManager: Brace multi-line statements
...
Makes intentions explicit.
2019-08-20 06:10:23 -04:00
Lioncash
a16327df68
CVarManager: Use std::any_of for restartRequired()
...
Same thing, but more concise.
2019-08-20 06:08:12 -04:00
Lioncash
a1a18c6816
CVarManager: Use insert_or_assign where applicable
...
Avoids the need to create an initial entry in the map which is then
overwritten with the value being assigned to it.
2019-08-20 06:06:55 -04:00
Phillip Stephens
3795e0e72c
Update boo
2019-08-20 01:08:25 -07:00
Phillip Stephens
6a78383d2a
Update boo
2019-08-20 00:34:25 -07:00
Phillip Stephens
5659c46170
Merge pull request #7 from lioncash/override
...
driver: Minor general cleanup
2019-08-19 23:02:46 -07:00
Phillip Stephens
b3a9c47ccd
Merge pull request #6 from lioncash/make
...
driver/main: Factor out code to constituent functions
2019-08-19 23:01:26 -07:00
Lioncash
9b735a853c
Database: Silence -Wdocumentation warnings
...
Amends two Doxygen parameter references.
2019-08-19 23:22:03 -04:00
Lioncash
7635b9c6c1
Database: Remove unused includes
...
Quite a few includes aren't directly used anywhere within the header
itself. We can remove these to avoid unintentionally propagating them
into other source files.
2019-08-19 23:14:27 -04:00
Lioncash
263c0697bc
Database: Use nullptr instead of NULL where applicable
2019-08-19 23:09:41 -04:00
Lioncash
66125c2b3b
Database: Convert typedefs into using aliases
2019-08-19 23:08:35 -04:00