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
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
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
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
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
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
Phillip Stephens
0532b38059
Fixes for `override` support
2019-08-10 17:46:14 -07:00
Jack Andersen
ffbd1a0bcd
Windows build fixes
2019-07-27 15:18:57 -10:00
Jack Andersen
0ada695c7a
Make simd_floats use std::array for storage
2019-07-20 22:41:46 -10:00
Jack Andersen
478d75f1cb
Massive fmtlib refactor
2019-07-19 18:19:44 -10:00
Jack Andersen
727f057fa7
GCC fixes and better CMake dependency handling
2019-06-11 15:58:44 -10:00
Jack Andersen
b9de854400
Ensure stream readers zero-initialize their return values
2019-04-06 18:44:50 -10:00
Jack Andersen
b40d3b17e5
Add True and False tests for bitwise enums
2019-04-02 18:28:05 -10:00
Jack Andersen
ef7a9633c6
Constexpr constructors for simd types
2019-02-23 12:03:57 -10:00
Jack Andersen
c1a1c6e754
GCC simd fix
2019-02-15 15:30:59 -10:00
Jack Andersen
1014a3ccda
Remove pointless static keywords
2018-12-30 19:01:15 -10:00
Jack Andersen
3d59b56a48
Minor bitwise enum macro change
2018-12-15 20:29:41 -10:00
Jack Andersen
0447e5be00
Windows fixes
2018-12-07 20:44:08 -10:00
Jack Andersen
7243c687a8
New code style refactor
2018-12-07 19:18:17 -10:00
Jack Andersen
e1b29fda7a
SIMD refactor
2018-12-07 15:31:02 -10:00
Jack Andersen
0cdfd0ad9f
Convert to pragma once
2018-10-06 17:37:09 -10:00
Phillip Stephens
5306525029
Initial Switch support (Needs testing)
2018-09-20 10:47:48 -07:00
Jack Andersen
7f28214e9f
Add VectorWriter
2018-08-24 22:38:23 -10:00
Jack Andersen
f898d7843a
Windows fix
2018-08-19 10:07:25 -10:00
Jack Andersen
c40ee0531a
Allow DNAOp to transparently handle cv-qualified types
2018-08-18 12:13:36 -10:00
Jack Andersen
075747c418
Remove cyclic include
2018-08-09 20:18:42 -10:00
Jack Andersen
d2dbd99ad6
Allow atdna to handle multidimensional arrays
2018-07-27 18:30:35 -10:00
Jack Andersen
61bfac431e
Merge branch 'master' of ssh://git.axiodl.com:6431/libAthena/athena
2018-07-15 21:42:29 -10:00
Jack Andersen
24666aebdd
More flexible DNA template support
2018-07-15 21:42:14 -10:00
Phillip Stephens
4963ef114f
Add `skipSeek` to `IStreamReader::read*String`
2018-07-15 10:11:23 -07:00
Jack Andersen
ed83b2f42c
Windows build fixes
2018-05-24 20:33:43 -10:00
Jack Andersen
1d761d5160
atdna-test fix
2018-03-03 18:24:11 -10:00
Phillip Stephens
a3f9629d44
Fix linux build
2018-02-27 17:42:06 -08:00
Jack Andersen
2b41d0234a
MSVC SFINAE bug fixes
2018-02-26 20:02:24 -10:00
Jack Andersen
2381e65d0d
String serialization bug fix
2018-02-26 00:38:11 -10:00
Jack Andersen
73a0ae0d00
Replace DNA_COUNT macro with AT_DNA_COUNT
2018-02-24 22:22:35 -10:00
Jack Andersen
17a0959dbd
Fix implicitly-converted vector serialization
2018-02-23 20:14:19 -10:00
Jack Andersen
62b6d6792a
Add ability to generate and specialize DNA class templates
2018-02-21 21:18:59 -10:00
Jack Andersen
80c945af6d
Merge branch 'master' of ssh://git.axiodl.com:6431/libAthena/athena
2018-02-17 23:51:53 -10:00
Jack Andersen
13d13f935b
Huge non-virtual template-based refactor for DNA
2018-02-17 23:50:24 -10:00
Phillip Stephens
80008cadcd
Return seed when given invalid data, re-order and rename parameters to make more sense
2018-02-15 17:07:50 -08:00
Phillip Stephens
5126c603b0
Add CRC-64-ECMA implementation
2018-02-15 09:20:13 -08:00
Jack Andersen
42b97e0306
YAML file merge call to avoid clobbering existing document nodes
2018-01-22 18:38:39 -10:00
Phillip Stephens
de55c9acdf
Add `YAMLDocReader::hasVal`
2018-01-15 04:32:10 -08:00
Jack Andersen
f414abe5a5
Isolate WinSock2 header to translation unit
2017-12-29 15:05:53 -10:00
Jack Andersen
017a921fdc
Huge compile performance refactor
2017-12-28 21:55:42 -10:00
Jack Andersen
cee9478773
Make atVec3d 32-byte aligned
2017-12-18 17:04:03 -10:00
Jack Andersen
2c66d56076
Add cross-compiling support for atdna
2017-12-06 18:07:33 -10:00
Jack Andersen
da9699a7e2
UWP support
2017-12-05 17:22:03 -10:00
Jack Andersen
30391f3352
Windows fixes
2017-11-13 17:33:31 -10:00
Jack Andersen
f5dabee0a7
string_view refactor
2017-11-12 20:12:37 -10:00
Jack Andersen
c043178254
Add IStreamReader::seekAlign4()
2017-04-21 20:41:48 -10:00
Jack Andersen
f3226c6102
Don't rely on seek() to write alignment bytes
2017-03-20 11:12:53 -10:00
Jack Andersen
2a4fc3e3b3
Use RAII context management for YAML vectors and records
2017-02-12 13:49:21 -10:00
Jack Andersen
9ccf9f596b
Make DNAYaml less header-heavy
2017-02-02 15:21:55 -10:00
Jack Andersen
cecbcffd96
Make signed YAML values export decimal
2017-01-31 21:18:04 -10:00
Jack Andersen
8f8edbbf16
Windows fix
2017-01-26 16:27:41 -10:00
Jack Andersen
d2e080a515
Add TransactionalFileWriter
2017-01-26 16:21:43 -10:00
Jack Andersen
a1acdac588
Proper pure-virtual convention
2017-01-25 22:07:48 -10:00
Jack Andersen
dd8b60f779
Support for u16string and u32string read/write
2017-01-23 21:39:47 -10:00
Jack Andersen
483870850c
Ensure memory.h included in Socket class
2017-01-07 14:13:02 -10:00
Jack Andersen
68596c75dd
proper 'athena' namespace for socket header
2017-01-07 11:25:26 -10:00
Jack Andersen
71aa822ce2
Proper return type for internal socket
2017-01-07 11:19:56 -10:00
Jack Andersen
2b3faddac1
Win32 fixes
2017-01-06 22:25:13 -10:00
Jack Andersen
5dc0f4928e
Add socket header
2017-01-06 19:03:13 -10:00
Jack Andersen
1ae2b844de
Merge branch 'master' of https://github.com/libAthena/athena
2017-01-03 19:24:49 -10:00
Jack Andersen
fdd2de6dbe
Add ROUND_UP_8
2017-01-03 19:24:31 -10:00
Phillip Stephens
0eb7fb20e8
More code cleanup
2017-01-03 10:42:03 -08:00
Phillip Stephens
e5715bbf8f
Remove GPL remnants, and naive `base` typedef
2017-01-03 03:15:07 -08:00
Phillip Stephens
ba92629900
Restore certificate check with re-written ECC code
2017-01-03 02:32:39 -08:00
Jack Andersen
318cc92083
Win32 warning avoidance
2016-12-11 13:30:00 -10:00
Jack Andersen
8fce7ce161
utf8proc null-pointer handling
2016-12-10 20:19:22 -10:00
Phillip Stephens
31f259c1e1
FreeBSD fixes
2016-10-27 15:44:50 -08:00
Jack Andersen
39c1e735e2
Windows Fixes
2016-10-19 14:51:38 -10:00
Phillip Stephens
829685a291
Add missing atStat64 define
2016-10-15 12:17:06 -07:00
Jack Andersen
2c23886134
rename stat64_t definition to atStat64_t to avoid collisions
2016-10-15 08:40:39 -10:00
Jack Andersen
a5a3244e1a
Ensure `name` field set before parsing mapping node
2016-10-07 17:39:40 -10:00
Jack Andersen
b3ca9a0a90
Add designated constructor for YAML string type
2016-10-02 12:33:25 -10:00
Jack Andersen
d3d63082d0
Add PTMF YAML reader to go along with writer
2016-10-01 13:18:19 -10:00
Jack Andersen
779e741a91
Add PTMF yaml stream writer
2016-09-30 16:55:46 -10:00
Jack Andersen
a2d040aeb4
Windows Fixes
2016-09-18 15:02:09 -10:00
Jack Andersen
d4d1bdabc6
Win32 FileReader/Writer; minor refinements
2016-09-18 13:45:19 -10:00
Phillip Stephens
1ae4af3fb1
Move Endian to IStream
2016-09-17 12:44:32 -07:00
Jack Andersen
cd9aa3eaf4
Removal of FILE* YAML streaming APIs; preferring Athena itself
2016-08-21 17:46:08 -10:00
Jack Andersen
b43c4af3a7
Global error option flag for MemoryReader
2016-08-08 08:22:03 -10:00
Jack Andersen
750d23c686
Correct use of constexpr
2016-07-31 18:33:29 -10:00
Jack Andersen
cf3dfcddff
Use constexpr for evaluating bitwise enums
2016-07-31 10:25:40 -10:00
Jack Andersen
4e61051354
Add missing inttypes.h include
2016-07-02 13:41:15 -10:00
Phillip Stephens
aff3349c33
Initial attempt to reimplement ecdsa certificates
2016-06-29 22:20:27 -07:00
Phillip Stephens
99dcef42f1
Remove EC and BN code in preparation due to licensing issues
2016-06-29 17:37:34 -07:00
Jack Andersen
617c121675
GCC compatibility fixes
2016-04-15 10:41:57 -10:00
Jack Andersen
8b2f1a8591
Add ROUND_UP_64
2016-04-03 16:31:25 -10:00
Jack Andersen
50406520ba
Some handy macros
2016-04-03 16:26:47 -10:00
Jack Andersen
34d3bd6724
Add ROUND_UP_4 macro
2016-03-30 20:17:05 -10:00