Commit Graph

566 Commits

Author SHA1 Message Date
Phillip Stephens 3f9177be15
Merge pull request #54 from lioncash/override
DNA: Add missing override specifiers
2019-08-26 17:44:21 -07:00
Phillip Stephens b383eedaee
Merge pull request #53 from lioncash/explicit
General: Make constructors explicit where applicable
2019-08-26 17:43:59 -07:00
Phillip Stephens 8368014a65
Merge pull request #55 from lioncash/goto
DNAYaml: Remove use of goto in finish()
2019-08-26 17:43:46 -07:00
Lioncash dcf83d7782 DNAYaml: Remove use of goto in finish()
We can just wrap the error code within a lambda and call it in the error
control paths, eliminating the need for goto.
2019-08-26 20:20:23 -04:00
Lioncash fd61e12081 DNA: Add missing override specifiers
Adds three missing override specifiers
2019-08-26 20:15:47 -04:00
Lioncash 881db18f7d General: Make constructors explicit where applicable
Makes non-conversion constructors explicit to make their construction
obvious.
2019-08-26 20:13:00 -04:00
Phillip Stephens 23b9b92f9f
Merge pull request #52 from lioncash/macro
General: Remove unused macros
2019-08-26 16:49:15 -07:00
Lioncash 641305635e General: Remove unused macros
These aren't used anywhere, so they can be removed.
2019-08-26 19:26:16 -04:00
Phillip Stephens e8d6c2abe7
Merge pull request #51 from lioncash/include
General: Include headers that are necessary
2019-08-26 15:59:54 -07:00
Lioncash 9c50a60c2b General: Include headers that are necessary
Removes unused headers and ensures that all necessary headers are
included. In particular, this removes quite a few <iostream> includes,
which removes quite a few static constructors.
2019-08-26 08:04:23 -04:00
Phillip Stephens d1d1850cb7
Merge pull request #50 from lioncash/type
Types: Tidy up header
2019-08-24 00:48:08 -07:00
Lioncash 0622ada766 Types: Qualify std types with std::
Same behavior, but more proper from a type header point of view.
2019-08-24 02:33:43 -04:00
Lioncash f669191fcb Types: Remove unnecessary macros
These appear to be unused, and, with C++17, can be superseded with
[[maybe_unused]] and [[deprecated]] attributes
2019-08-24 02:31:10 -04:00
Lioncash 8471a7e189 Types: Simplify typedefs
These can just be regular structure declarations. This also has the
benefit of allowing forward declaring the types.
2019-08-24 02:29:37 -04:00
Phillip Stephens 5da7e7bac3
Merge pull request #49 from lioncash/doc
General: Silence -Wdocumentation warnings
2019-08-16 18:18:23 -07:00
Phillip Stephens 1fc1c9eab3
Merge pull request #48 from lioncash/lz
LZBase/LZLookupTable: Minor cleanup
2019-08-16 18:18:14 -07:00
Lioncash 5140e9e7eb General: Silence -Wdocumentation warnings
Resolves trivial Doxygen reference warnings uncovered with
-Wdocumentation
2019-08-16 00:40:29 -04:00
Lioncash c524a9caa2 LZLookupTable: Remove unused <deque> include
This header and the matching cpp file make no use of std::deque, so this
can be removed.
2019-08-15 23:54:04 -04:00
Lioncash a3a6e3b42a LZLookupTable: Reuse setLookAheadWindow within constructor
Provides the same behavior without duplicating code.
2019-08-15 23:48:49 -04:00
Lioncash 70aeed342f LZLookupTable: Convert typedef into a using alias 2019-08-15 23:47:06 -04:00
Lioncash f7b8c33ed2 LZLookupTable: Default-initialize class members directly in the class
Same thing without the need to duplicate the variable name.
2019-08-15 23:45:17 -04:00
Lioncash 3092dc79e7 LZLookupTable: Default destructor 2019-08-15 23:41:10 -04:00
Lioncash 663696fe72 LZLookupTable: Make member functions const where applicable
While we're at it, we can convert compare_equal into an operator==
operator!= pair, and make the curPos argument to search() const as well.
2019-08-15 23:39:45 -04:00
Lioncash 48ae0d32fe LZBase: Remove unused <string> include 2019-08-15 23:35:16 -04:00
Lioncash 50936ab1a9 LZBase: Default virtual destructor 2019-08-15 23:35:12 -04:00
Phillip Stephens 8506e3236c
Merge pull request #47 from lioncash/ostream
Global: Change <iostream> include into <ostream>
2019-08-15 20:34:04 -07:00
Lioncash be9ac57b9d LZBase: Mark functions as const where applicable
Most of the interface can be const qualified except for the setters.
While we're at it, we can also make the private member functions
internally linked helper functions, given they don't depend on instance
state at all.
2019-08-15 23:28:41 -04:00
Lioncash d36b7bdc3f Global: Change <iostream> include into <ostream>
<iostream> injects a static constructor into every translation unit that
includes the header--even if nothing from the header is used. This can
result in minor initial program slowdown, as all of these constructors
need to run before main() can execute.

Instead, we can use <ostream>, which includes all of the necessary
machinery that we need.
2019-08-15 20:06:17 -04:00
Phillip Stephens 2f5dbc11ed
Merge pull request #46 from lioncash/inline
General: Minor general cleanup
2019-08-15 15:28:44 -07:00
Lioncash 54b1e8f836 General: Use nullptr where applicable
Uses nullptr instead of NULL or the 0 integer literal where applicable.
2019-08-15 16:12:17 -04:00
Lioncash d735ed45db General: Use the override keyword where applicable 2019-08-15 16:12:17 -04:00
Lioncash 5657bd7f2f General: Remove unnecessary typename specifiers 2019-08-15 16:12:14 -04:00
Lioncash 919a74c72c General: Remove unnecessary usages of inline
Functions defined directly in a class definition are already inline by
default.

Non-specialized templates are also inline by default.
2019-08-15 16:07:47 -04:00
Phillip Stephens 40d7396f22
Merge pull request #45 from libAthena/revert-42-inline
Revert "General: Minor general cleanup"
2019-08-15 08:53:06 -07:00
Phillip Stephens af59ea2d48
Revert "General: Minor general cleanup" 2019-08-15 08:52:45 -07:00
Phillip Stephens 4af15d46c9
Merge pull request #44 from lioncash/simplify
IStreamReader/IStreamWriter: Simplify buffer functions where applicable
2019-08-15 08:40:02 -07:00
Phillip Stephens 97db908b3d
Merge pull request #43 from lioncash/str
DNAYaml: Replace implementation-specific functions with standardized equivalents
2019-08-15 08:39:32 -07:00
Phillip Stephens 5973db475c
Merge pull request #42 from lioncash/inline
General: Minor general cleanup
2019-08-15 08:39:13 -07:00
Lioncash 831b2ffdb6 IStreamReader/IStreamWriter: Simplify buffer functions where applicable
We can simply use std::make_unique instead of raw new + memset. For
fill(), we can just use std::vector, given one of its constructors
allows for an initial value to be specified.
2019-08-15 11:31:50 -04:00
Lioncash 407c9cfab5 DNAYaml: Replace implementation-specific functions with standardized equivalents 2019-08-15 11:18:47 -04:00
Lioncash 83818a6272 General: Use nullptr where applicable
Uses nullptr instead of NULL or the 0 integer literal where applicable.
2019-08-15 11:04:09 -04:00
Lioncash 8e22dda880 General: Use the override keyword where applicable 2019-08-15 10:56:26 -04:00
Phillip Stephens f9205876f0
Merge pull request #41 from lioncash/make
DNAYaml: Minor cleanup
2019-08-15 07:48:20 -07:00
Lioncash 4b7917cc05 General: Remove unnecessary typename specifiers 2019-08-15 10:31:04 -04:00
Lioncash 60c554f67e General: Remove unnecessary usages of inline
Functions defined directly in a class definition are already inline by
default.

Non-specialized templates are also inline by default.
2019-08-15 09:24:50 -04:00
Lioncash c3d19a8aab DNAYaml: Make is_base64() internally linked
This isn't used outside of this translation unit, so it can be made
static.
2019-08-15 08:29:07 -04:00
Lioncash 9fc76a7dea DNAYaml: Use std::string_view instead of std::string for base64 characters
Eliminates a runtime static constructor that needs to execute. Also gets
rid of a heap allocation.
2019-08-15 08:09:41 -04:00
Lioncash ee5b894537 DNAYaml: Get rid of trivial uses of goto
We can just wrap the handling within a lambda function and then execute
it on the error paths.
2019-08-15 08:06:52 -04:00
Lioncash 46a847e885 DNAYaml: Make use of std::make_unique where applicable
Gets rid of a few places of raw new where it can be trivially avoided.
2019-08-15 07:49:55 -04:00
Phillip Stephens 0532b38059 Fixes for `override` support 2019-08-10 17:46:14 -07:00