Commit Graph

217 Commits

Author SHA1 Message Date
Deukhoofd 98ff6b3b69
Improves exception stack traces by including inlined functions, and displaying snippets of code.
continuous-integration/drone/push Build is passing Details
2020-08-16 19:15:45 +02:00
Deukhoofd 5c9e58d032
Style fixes.
continuous-integration/drone/push Build is failing Details
2020-08-16 17:34:58 +02:00
Deukhoofd 73e67b8c5d
Fixed define flag.
continuous-integration/drone/push Build is passing Details
2020-08-16 17:31:11 +02:00
Deukhoofd c58bc6f785
Hide some functions that aren't used by Windows from the Windows build.
continuous-integration/drone/push Build is failing Details
2020-08-16 17:27:09 +02:00
Deukhoofd 620248f329
Include debug symbols in Release build, rework exception stack trace.
continuous-integration/drone/push Build is failing Details
2020-08-16 16:59:13 +02:00
Deukhoofd 5a14c712d2
Style fix
continuous-integration/drone/push Build is passing Details
2020-08-16 10:43:54 +02:00
Deukhoofd 20a7dc55a0
Return a value when stacktrace is empty.
continuous-integration/drone/push Build is passing Details
2020-08-16 10:41:10 +02:00
Deukhoofd 9726920b7f
Fixes for Windows.
continuous-integration/drone/push Build is passing Details
2020-08-15 16:14:33 +02:00
Deukhoofd 7de12d53b5
Implements noexcept copy constructor for Exception. 2020-08-15 16:14:06 +02:00
Deukhoofd f158dbf8a2
Throw all exceptions with Arbutils exception. 2020-08-15 14:50:17 +02:00
Deukhoofd 168c45cb3b
Further fixes for Exception class on Windows.
continuous-integration/drone/push Build is failing Details
2020-08-15 14:25:27 +02:00
Deukhoofd c7d18db8b7
Completely not include the stacktrace on Windows.
continuous-integration/drone/push Build is failing Details
2020-08-15 14:22:32 +02:00
Deukhoofd e778b61839
Don't use stacktrace on Windows.
continuous-integration/drone/push Build is failing Details
2020-08-15 14:19:36 +02:00
Deukhoofd 1dee4cd4a8
Better handling for Exception stack trace testing.
continuous-integration/drone/push Build is failing Details
2020-08-15 13:59:10 +02:00
Deukhoofd 5ac7654be1
Add option to get depth of stack trace.
continuous-integration/drone/push Build is failing Details
2020-08-15 13:48:34 +02:00
Deukhoofd f29e111b78
Support new exception type with stack trace.
continuous-integration/drone/push Build is failing Details
2020-08-15 13:31:16 +02:00
Deukhoofd fb6b04bf03
Style Fix
continuous-integration/drone/push Build is passing Details
2020-08-10 17:22:47 +02:00
Deukhoofd 6e7a28d754
Support for swapping in a UniquePtrList.
continuous-integration/drone/push Build is passing Details
2020-08-10 17:20:37 +02:00
Deukhoofd 08952c86d0
Support for passing parameters to list to construct item in list.
continuous-integration/drone/push Build is passing Details
2020-08-09 10:47:41 +02:00
Deukhoofd 74ebb40afc
Fixes build.
continuous-integration/drone/push Build is passing Details
2020-08-08 12:20:20 +02:00
Deukhoofd 0d9ea1d3a3
Changes empty static StringView, as it caused conflicts with older Empty bool checker.
continuous-integration/drone/push Build is failing Details
2020-08-08 12:10:25 +02:00
Deukhoofd f330e8a9e0
Fixes naming.
continuous-integration/drone/push Build is passing Details
2020-08-08 11:41:21 +02:00
Deukhoofd d8c3fe1436
Add support for simple empty StringView.
continuous-integration/drone/push Build is passing Details
2020-08-08 11:26:46 +02:00
Deukhoofd 5fda89bc72
Add support for setting and taking ownership on a pointer in UniquePtrList.
continuous-integration/drone/push Build is passing Details
2020-07-25 14:28:00 +02:00
Deukhoofd 4f5ae70634
Cleanup for the cmake file.
continuous-integration/drone/push Build is failing Details
2020-07-17 12:15:32 +02:00
Deukhoofd eb3e174877
Reset to before c++20 features that required clang.
continuous-integration/drone/push Build is passing Details
2020-07-12 15:06:20 +02:00
Deukhoofd 84052a2d94
Make StringViewLiteral use ConstEval
continuous-integration/drone/push Build is failing Details
2020-07-10 11:07:34 +02:00
Deukhoofd 950464ae79
Implements piping StringView into streams.
continuous-integration/drone/push Build is passing Details
2020-07-08 13:28:43 +02:00
Deukhoofd 97b15650f1
Intialize StringView fields to default values/
continuous-integration/drone/push Build is passing Details
2020-07-04 15:33:59 +02:00
Deukhoofd 25772e7d5a
Remove constexpr from non-constexpr function.
continuous-integration/drone/push Build is passing Details
2020-07-04 15:04:31 +02:00
Deukhoofd d3aacee0ef
Replace StringView with shared_ptr.
continuous-integration/drone/push Build is failing Details
2020-07-04 14:59:56 +02:00
Deukhoofd 5994299baa
Further tweaks to StringViews.
continuous-integration/drone/push Build is passing Details
2020-06-27 15:15:13 +02:00
Deukhoofd 9f5b8e9c83
Removed std::string_view ctor on StringView.
continuous-integration/drone/push Build is passing Details
2020-06-27 14:24:43 +02:00
Deukhoofd 083c00f85e
Changes for how Literal changes to normal StringView.
continuous-integration/drone/push Build is passing Details
2020-06-27 14:16:15 +02:00
Deukhoofd 773e765c83
Slight rework of StringView.
continuous-integration/drone/push Build is passing Details
2020-06-27 14:02:35 +02:00
Deukhoofd 030f82d34f
Reset pointer on charholder to prevent multiple deletions.
continuous-integration/drone/push Build is passing Details
2020-06-27 13:59:01 +02:00
Deukhoofd 49b5e2cfe9
Fixes Windows build.
continuous-integration/drone/push Build is passing Details
2020-06-27 13:35:29 +02:00
Deukhoofd f64224131b
Tweaks for StringView to make the backing value the owner of the string.
continuous-integration/drone/push Build is failing Details
2020-06-27 13:27:17 +02:00
Deukhoofd 544c541bc3
Remove dereference operator as it just causes issues.
continuous-integration/drone/push Build is passing Details
2020-06-26 17:49:42 +02:00
Deukhoofd 7da8a46c45
Hopefully fixes issues with incomplete types in BorrowedPtrs.
continuous-integration/drone/push Build is passing Details
2020-06-26 17:42:43 +02:00
Deukhoofd d3c9998afa
Fixes for dereference operator.
continuous-integration/drone/push Build is passing Details
2020-06-26 17:31:52 +02:00
Deukhoofd c08224ed26
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-06-26 17:18:50 +02:00
Deukhoofd 7fe8c80141
Fixed issue where the dereferencing function broke compilation on some compilers.
continuous-integration/drone/push Build is passing Details
2020-06-26 17:17:06 +02:00
Deukhoofd 72aad2a5e3
Fixed dereference operators being noexcept.
continuous-integration/drone/push Build is passing Details
2020-06-26 16:31:33 +02:00
Deukhoofd 4ffe9f10a3
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-06-26 16:27:17 +02:00
Deukhoofd e52b824a51
Mark StringView and StringViewLiteral as final.
continuous-integration/drone/push Build is passing Details
2020-06-26 16:25:07 +02:00
Deukhoofd 57f2d15723
Revert "Add virtual destructor to BasicStringView."
continuous-integration/drone/push Build is passing Details
This reverts commit 94fec63c
2020-06-26 16:20:46 +02:00
Deukhoofd 94fec63c1b
Add virtual destructor to BasicStringView.
continuous-integration/drone/push Build is failing Details
2020-06-26 16:17:19 +02:00
Deukhoofd 088f66c385
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-06-26 15:58:42 +02:00
Deukhoofd abca51d331
Large rework of the project, specifically the String classes.
continuous-integration/drone/push Build is passing Details
2020-06-26 15:56:00 +02:00
Deukhoofd 8eba3b28ff
Add dereference operator for BorrowedPtr.
continuous-integration/drone/push Build is passing Details
2020-06-26 13:13:46 +02:00
Deukhoofd d547046752
Assert BorrowedPtr is not null when trying to dereference it.
continuous-integration/drone/push Build is passing Details
2020-06-26 13:12:58 +02:00
Deukhoofd f59ec6c957
Follow code style with noexcept, add Const() function to BorrowedPtr to return a const pointer of itself.
continuous-integration/drone/push Build is passing Details
2020-06-20 17:45:41 +02:00
Deukhoofd 893aa969d5
Make BorrowedPtr hashable.
continuous-integration/drone/push Build is passing Details
2020-06-02 16:03:47 +02:00
Deukhoofd 4323e59ed4
Further fixes for Remove function on UniquePtrList
continuous-integration/drone/push Build is passing Details
2020-06-02 14:40:59 +02:00
Deukhoofd 44fc403fb6
Fixes for Remove function on UniquePtrList
continuous-integration/drone/push Build is passing Details
2020-06-02 14:28:09 +02:00
Deukhoofd 5196bed8aa
Implement Remove function for UniquePtrList.
continuous-integration/drone/push Build is passing Details
2020-06-02 13:57:40 +02:00
Deukhoofd ad2d3be7e4
Add iterator for const version of UniquePtrList.
continuous-integration/drone/push Build is passing Details
2020-05-31 18:50:22 +02:00
Deukhoofd a3a0859b94
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-05-31 17:16:20 +02:00
Deukhoofd 8ecf765ead
Make retrieve operation a const.
continuous-integration/drone/push Build is passing Details
2020-05-31 17:06:04 +02:00
Deukhoofd 262156fbd2
Allow initialization of UniquePtrList from vector of pointers.
continuous-integration/drone/push Build is passing Details
2020-05-31 16:58:45 +02:00
Deukhoofd bfe1fcc805
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-05-31 16:40:33 +02:00
Deukhoofd b7f1812153
Helper collection class that functions as list of unique pointers.
continuous-integration/drone/push Build is passing Details
2020-05-31 16:37:49 +02:00
Deukhoofd 0b740ee24d
Fixed cast functions on BorrowedPtr being invalid.
continuous-integration/drone/push Build is passing Details
2020-05-26 19:40:08 +02:00
Deukhoofd 90bda57d79
Renamed borrowed ptr to be in line with other types.
continuous-integration/drone/push Build is passing Details
2020-05-26 17:39:27 +02:00
Deukhoofd c8ca951dd8
Reduce namespace length further 2020-05-26 17:36:39 +02:00
Deukhoofd 3dc96de34b
Change namespace name so it's a lot less verbose.
continuous-integration/drone/push Build is passing Details
2020-05-26 17:21:08 +02:00
Deukhoofd 2ae108517d
Support for easy type casting from borrowed_ptr.
continuous-integration/drone/push Build is passing Details
2020-05-26 17:18:12 +02:00
Deukhoofd f1ebfd78f6
Mark several more borrowed_ptr functions as const.
continuous-integration/drone/push Build is passing Details
2020-05-26 14:01:52 +02:00
Deukhoofd a84c7ae45c
Implements assignment, some tweaks for borrowed_ptr.
continuous-integration/drone/push Build is passing Details
2020-05-26 13:44:06 +02:00
Deukhoofd 817b4c55d8
Fixes for style in Random class.
continuous-integration/drone/push Build is passing Details
2020-05-26 13:33:43 +02:00
Deukhoofd 373988c8b0
Removed overloaded equality members.
continuous-integration/drone/push Build is passing Details
2020-05-26 13:31:56 +02:00
Deukhoofd 779ddd49e3
Replace old memory management tests with simple borrowed_ptr.cpp.
continuous-integration/drone/push Build is passing Details
2020-05-26 13:22:18 +02:00
Deukhoofd 28f427fa36
Switches Random handling to PCG family, specifically for better cross platform predictability.
continuous-integration/drone/push Build is passing Details
2020-05-22 12:37:25 +02:00
Deukhoofd f99243481e
Better support for linking C libraries statically.
continuous-integration/drone/push Build is failing Details
2020-05-03 12:27:22 +02:00
Deukhoofd fe2bec18f5
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-05-02 15:55:55 +02:00
Deukhoofd 84b08f66e5
Fixes for ConstString
continuous-integration/drone/push Build is passing Details
2020-05-02 15:30:25 +02:00
Deukhoofd 2e227a2688
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-04-28 16:55:00 +02:00
Deukhoofd 50f430b7be
Use map::at() function for Dictionary::Get, as it already throws an exception if it doesn't exist.
continuous-integration/drone/push Build is passing Details
2020-04-25 15:53:17 +02:00
Deukhoofd fea040252d
Fixed type issue in List.
continuous-integration/drone/push Build is passing Details
2020-04-24 19:13:55 +02:00
Deukhoofd 846a9380a7
Make List constructor with capacity reserve the space, instead of creating the vector with a set size.
continuous-integration/drone/push Build is passing Details
2020-04-24 18:48:23 +02:00
Deukhoofd 409b52bbf7
Support for reserving space in List.
continuous-integration/drone/push Build is passing Details
2020-04-24 18:47:17 +02:00
Deukhoofd fbf2e42b8f
Performance improvements for collections.
continuous-integration/drone/push Build is passing Details
2020-04-24 17:47:49 +02:00
Deukhoofd 24aff14745
Fixed const issue.
continuous-integration/drone/push Build is passing Details
2020-04-22 22:54:57 +02:00
Deukhoofd 535b68bb8c
Return GetRandomEngine not by const, so we can actually use it
continuous-integration/drone/push Build is passing Details
2020-04-22 22:50:36 +02:00
Deukhoofd 1b623c2b76
Support for getting the random engine from Random class.
continuous-integration/drone/push Build is passing Details
2020-04-22 22:44:26 +02:00
Deukhoofd 0777561a21
Removed unsensible explicit in list constructor
continuous-integration/drone/push Build is passing Details
2020-04-22 13:26:39 +02:00
Deukhoofd e34f60a8ac
Return previous value from Set function.
continuous-integration/drone/push Build is passing Details
2020-04-22 13:22:20 +02:00
Deukhoofd 8306c14163
Add Set function to List. 2020-04-22 13:21:06 +02:00
Deukhoofd 195043d4c5
Implements easier assertions for iterators
continuous-integration/drone/push Build is passing Details
2020-04-22 12:44:50 +02:00
Deukhoofd 43e612122c
Further fixes for NO_ASSERT builds.
continuous-integration/drone/push Build is passing Details
2020-04-22 12:17:47 +02:00
Deukhoofd 479a240c6f
Don't throw compilation error when NO_ASSERT is used.
continuous-integration/drone/push Build is passing Details
2020-04-22 12:02:00 +02:00
Deukhoofd 91b9854932
Further tweaks to ConstString.
continuous-integration/drone/push Build is passing Details
2020-04-21 17:06:49 +02:00
Deukhoofd 5e3b067452
Make Dictionary function parameters all passed by reference
continuous-integration/drone/push Build is passing Details
2020-04-21 13:59:01 +02:00
Deukhoofd 96995d071f
Handler for when a ConstString is assigned to an already equal ConstString.
continuous-integration/drone/push Build is passing Details
2020-04-21 13:56:06 +02:00
Deukhoofd 9bd30cb9c4
Rework of empty string handler on ConstString.
continuous-integration/drone/push Build is passing Details
2020-04-21 10:20:37 +02:00
Deukhoofd c033060c16
Handle ConstString empty pointer better.
continuous-integration/drone/push Build is passing Details
2020-04-20 19:49:39 +02:00
Deukhoofd 79384efb85
Tweaks and fixes for ConstString.
continuous-integration/drone/push Build is passing Details
2020-04-20 19:38:45 +02:00
Deukhoofd 7d98d5b467
Assert that max is higher than min on random.
continuous-integration/drone/push Build is passing Details
2020-04-19 18:45:59 +02:00
Deukhoofd 63da7ffda0
Fix start value not working on Enum.
continuous-integration/drone/push Build is passing Details
2020-04-18 15:12:34 +02:00