Commit Graph
100 Commits
Author SHA1 Message Date
Deukhoofd a618f2b98b Style fixes
continuous-integration/drone/push Build is failing
2022-03-23 14:16:18 +01:00
Deukhoofd eda1a29427 Fixes missing documentation 2022-03-23 14:15:48 +01:00
Deukhoofd 3b19f8b268 Turns out vector::data() can return null
continuous-integration/drone/push Build is failing
2022-03-23 13:04:04 +01:00
Deukhoofd 9eca4fa9bb Expand on the use of defines and non_null/nullable
continuous-integration/drone/push Build is failing
2022-03-23 12:56:12 +01:00
Deukhoofd 0031804fe8 Implements Defines with common defines, initial work on nullability
continuous-integration/drone/push Build is passing
2022-03-23 11:13:42 +01:00
Deukhoofd ac7d8e58b4 Fixes non clang builds
continuous-integration/drone/push Build is passing
2022-03-23 11:02:13 +01:00
Deukhoofd 9d02cca1a8 Demote error for unknown sanitizers to warning
continuous-integration/drone/push Build is failing
2022-03-23 10:58:32 +01:00
Deukhoofd afd51a7924 More sanitizers, fixes several errors caught by these.
continuous-integration/drone/push Build is failing
2022-03-23 10:53:02 +01:00
Deukhoofd 6005850115 Disable SanitizerTests for Windows :(
continuous-integration/drone/push Build is passing
2022-03-22 12:42:56 +01:00
Deukhoofd d6c8512617 Fixes for AddressSanitizer not working in valgrind.
continuous-integration/drone/push Build is failing
2022-03-22 12:36:52 +01:00
Deukhoofd 4eb33d7964 Add support for AddressSanitizer to unit tests
continuous-integration/drone/push Build is failing
2022-03-22 12:28:42 +01:00
Deukhoofd ca9c885657 Fixes Dictionary error.
continuous-integration/drone/push Build is passing
2022-03-20 12:21:04 +01:00
Deukhoofd 84dd686b61 Revers change to Dictionary using pointer.
continuous-integration/drone/push Build is passing
2022-03-20 12:17:11 +01:00
Deukhoofd f4a9059150 Fixes style
continuous-integration/drone/push Build is passing
2022-03-20 12:02:25 +01:00
Deukhoofd 8667c8f8ff Adds documentation for Ensure macros
continuous-integration/drone/push Build is passing
2022-03-20 11:59:18 +01:00
Deukhoofd e8f4ab27b5 Fixes destructor missing.
continuous-integration/drone/push Build is failing
2022-03-20 11:55:56 +01:00
Deukhoofd 94ca0327ef Adds copy and assignment operators for Dictionary
continuous-integration/drone/push Build is failing
2022-03-20 11:39:00 +01:00
Deukhoofd 74e3cb36a7 Make Dictionary use pointer to map
continuous-integration/drone/push Build is failing
2022-03-20 11:34:24 +01:00
Deukhoofd 97babe79e1 Adds new Ensure helpers for clearer error messages.
continuous-integration/drone/push Build is failing
2022-03-20 11:05:44 +01:00
Deukhoofd be81082588 Fixes GCC build
continuous-integration/drone/push Build is passing
2022-03-11 11:32:44 +01:00
Deukhoofd 2bf12ab879 Update doctest
continuous-integration/drone/push Build is failing
2022-03-11 11:06:44 +01:00
Deukhoofd ba411d011b Cleanup exception stacktraces, so the compile the same on Windows.
continuous-integration/drone/push Build is failing
Stacktraces still appear to be empty on Windows, but that's an issue for a later day.
2022-02-26 14:55:28 +01:00
Deukhoofd eb8356145f Merge remote-tracking branch 'origin/master'
continuous-integration/drone/push Build is passing
2022-02-12 13:46:04 +01:00
Deukhoofd 7532e4d94d Only statically link libm and pthread on Windows 2022-02-12 13:45:55 +01:00
Deukhoofd e9395f71b8 Only statically link libm and pthread on Windows
continuous-integration/drone/push Build is passing
2022-02-12 12:41:51 +01:00
Deukhoofd 923483e9b9 Sign build
continuous-integration/drone/push Build is passing
2022-02-05 15:47:41 +01:00
Deukhoofd 069320318e Fixes build
continuous-integration/drone/push Build is pending
2022-02-05 15:46:11 +01:00
Deukhoofd 26db32299d Change TESTS option to ARBUTILS_TESTS
continuous-integration/drone/push Build is failing
2022-02-05 15:45:11 +01:00
Deukhoofd 656de2ab17 Only add doctest when tests are enabled
continuous-integration/drone/push Build is passing
2022-02-05 13:51:50 +01:00
Deukhoofd ea2fa7b547 Dont build our dependencies, they have header only implementations in their repos.
continuous-integration/drone/push Build is passing
2022-02-05 13:48:13 +01:00
Deukhoofd f5690363da Moves extern dependencies to CPM
continuous-integration/drone Build is failing
2022-02-05 13:37:47 +01:00
Deukhoofd b239b556dc Documents Exception::Throw.
continuous-integration/drone/push Build is passing
2021-11-21 12:35:40 +01:00
Deukhoofd 69714084d6 Style fixes. 2021-11-21 12:34:00 +01:00
Deukhoofd dbe3923cc4 Removes unused function 2021-11-21 12:33:34 +01:00
Deukhoofd 52130fa8a5 Mark Exception::Throw as noreturn, fix windows build.
continuous-integration/drone/push Build is failing
2021-11-21 12:30:35 +01:00
Deukhoofd 1be055760a Reworks ensure and throw to not fully depend on macros anymore.
continuous-integration/drone/push Build is failing
2021-11-21 12:27:46 +01:00
Deukhoofd ea5c824d34 Fixes for Windows.
continuous-integration/drone/push Build is passing
2021-10-30 13:38:52 +02:00
Deukhoofd b72685ff05 Removes noexcept from UniquePtrList constructor.
continuous-integration/drone/push Build is failing
2021-10-30 12:59:36 +02:00
Deukhoofd 1280e19fd0 Add reference to <vector> to Enum header.
continuous-integration/drone/push Build is failing
2021-10-30 12:56:52 +02:00
Deukhoofd 999dc675fa Remove precompiled header, as it only caused issues.
continuous-integration/drone/push Build is failing
2021-10-30 12:54:57 +02:00
Deukhoofd 5a352357fb Updates for new Windows CI
continuous-integration/drone/push Build is passing
2021-10-02 16:39:54 +02:00
Deukhoofd 78d4513a4d Removes Conan build step, adds documentation to dictionary.
continuous-integration/drone/push Build is passing
2021-09-26 10:47:19 +02:00
Deukhoofd dbf6fbc1db Adds documentation, style fixes.
continuous-integration/drone/push Build is failing
2021-09-25 17:59:06 +02:00
Deukhoofd 73b2270fca Further fixes for new convenience functions.
continuous-integration/drone/push Build is failing
2021-09-25 14:34:34 +02:00
Deukhoofd b7c9944784 Fixes invalid declaration
continuous-integration/drone/push Build is failing
2021-09-25 14:30:09 +02:00
Deukhoofd a2b52c5ed5 Adds helper functions to the list types.
continuous-integration/drone/push Build is failing
2021-09-25 14:21:31 +02:00
Deukhoofd 54c5422cda Adds helper functions for ScopedPtr
continuous-integration/drone/push Build is passing
2021-08-29 16:23:04 +02:00
Deukhoofd b58b8537b5 Update backward to 1.6 2021-08-29 16:21:30 +02:00
Deukhoofd ec3c8e7701 Handle THROW macro in its own scope.
continuous-integration/drone/push Build is passing
2021-08-22 11:35:08 +02:00
Deukhoofd a0488d7078 Fixes Windows issues
continuous-integration/drone/push Build is passing
2021-06-20 12:05:30 +02:00
Deukhoofd c693c2635e Include <optional> in precompiled.
continuous-integration/drone/push Build is passing
2021-06-19 12:46:40 +02:00
Deukhoofd eb662cb2e4 If Windows and shared, force .dll extension.
continuous-integration/drone/push Build is passing
2021-04-30 14:36:31 +02:00
Deukhoofd fe523f6c0d Show actual length when logging out of bounds errors on lists.
continuous-integration/drone/push Build is passing
2021-04-17 14:49:29 +02:00
Deukhoofd 6ef9a6d67b When calling Clear on UniquePtrList, also clear the vector.
continuous-integration/drone/push Build is passing
2021-04-14 19:27:56 +02:00
Deukhoofd b3ab6dab59 TakeOwnership shouldn't be const.
continuous-integration/drone/push Build is passing
2021-03-27 12:23:31 +01:00
Deukhoofd 5274ba735c Further fixes for optional scoped ptr.
continuous-integration/drone/push Build is passing
2021-03-27 12:10:33 +01:00
Deukhoofd c805b4eee8 Fixes for OptionalScopedPtr.
continuous-integration/drone/push Build is passing
2021-03-27 12:03:00 +01:00
Deukhoofd 29ac434679 Adds implicit cast to raw pointer to ScopedPtr.
continuous-integration/drone/push Build is passing
2021-03-27 11:08:09 +01:00
Deukhoofd ce1268b1de Adds OptionalScopedPtr, made ScopedPtr non nullable, fixes some APIs on the optional pointer variants.
continuous-integration/drone/push Build is passing
2021-03-27 11:03:41 +01:00
Deukhoofd 47ee3a0295 When we were doing STATICC we were linking libdw dynamically, still requiring many dependencies. THis switches to libbfd, which should massively reduce the number of required libraries.
continuous-integration/drone/push Build is passing
2021-03-26 13:37:01 +01:00
Deukhoofd 12f643a80e Style fixes.
continuous-integration/drone/push Build is passing
2021-03-07 10:15:34 +01:00
Deukhoofd c1917c6f77 Adds misc macro NO_COPY_OR_MOVE, which allows you to delete copy and move constructors and assignment operators.
continuous-integration/drone/push Build is passing
2021-03-07 09:54:55 +01:00
Deukhoofd 28ba531a47 Work on reducing file sizes, by adding fewer debug symbols.
continuous-integration/drone/push Build is passing
2020-12-31 13:48:52 +01:00
Deukhoofd b3c9c95345 Add Debug compile flag if we're building in debug mode.
continuous-integration/drone/push Build is passing
2020-12-23 12:04:55 +01:00
Deukhoofd 95266f71ba Lots of cleanups to get stacks properly working in all cases. 2020-12-23 12:04:20 +01:00
Deukhoofd 0e49c58647 Delete comparison with nullptr for non-null pointers.
continuous-integration/drone/push Build is passing
2020-12-13 11:51:47 +01:00
Deukhoofd 90bb8d54b6 Rename Assert.hpp --> Ensure.hpp, style fixes.
continuous-integration/drone/push Build is passing
2020-12-13 11:45:00 +01:00
Deukhoofd 4e854516c1 Rename Assert macro to Ensure, clean up exception to be in line with THROW.
continuous-integration/drone/push Build is passing
2020-12-13 11:41:41 +01:00
Deukhoofd 4466aeeee6 Fixes OptionalBorrowedPtr casts.
continuous-integration/drone/push Build is passing
2020-12-12 13:50:09 +01:00
Deukhoofd 96315cb857 Rework Dictionary::TryGet to use std::optional.
continuous-integration/drone/push Build is passing
2020-12-12 12:53:47 +01:00
Deukhoofd 362e4bf59b Fixes inequality with raw pointer with smart pointers being inverted.
continuous-integration/drone/push Build is passing
2020-12-12 12:10:37 +01:00
Deukhoofd 7ec2a3f2b0 Fixes naming.
continuous-integration/drone/push Build is passing
2020-12-12 11:57:47 +01:00
Deukhoofd b909fc720a Style fixes.
continuous-integration/drone/push Build is passing
2020-12-12 11:56:13 +01:00
Deukhoofd a972162d6e Adds OptionalUniquePtrList
continuous-integration/drone/push Build is passing
2020-12-12 11:53:32 +01:00
Deukhoofd 9f064c1e25 Fixes optional pointers.
continuous-integration/drone/push Build is passing
2020-12-12 11:37:19 +01:00
Deukhoofd f704a6c2f7 Fixes copy constructor in OptionalBorrowedPtr being broken.
continuous-integration/drone/push Build is passing
2020-12-12 11:30:22 +01:00
Deukhoofd 5ef9d5f6fc Fixes assignment of raw pointers to smart pointers being broken.
continuous-integration/drone/push Build is passing
2020-12-11 17:27:58 +01:00
Deukhoofd 1119012158 Removes Result class.
continuous-integration/drone/push Build is passing
2020-12-11 17:16:36 +01:00
Deukhoofd e35129ceed Fixes destructor.
continuous-integration/drone/push Build is passing
2020-12-11 16:48:07 +01:00
Deukhoofd 577f105c61 Result destructor for _errorMessage.
continuous-integration/drone/push Build is passing
2020-12-11 16:42:58 +01:00
Deukhoofd fdfd5f05c0 Adds copy operators on Result.
continuous-integration/drone/push Build is passing
2020-12-11 16:38:38 +01:00
Deukhoofd e3853bf290 Implicitly cast result value to OK result with given value.
continuous-integration/drone/push Build is passing
2020-12-11 16:25:18 +01:00
Deukhoofd 6f932f375f Fixes style.
continuous-integration/drone/push Build is passing
2020-12-11 16:19:36 +01:00
Deukhoofd 880f476034 Fixes specialization error
continuous-integration/drone/push Build is passing
2020-12-11 16:19:18 +01:00
Deukhoofd 3b4ba7c82b Add trivial constructors to pointers.
continuous-integration/drone/push Build is passing
2020-12-11 16:14:12 +01:00
Deukhoofd f7a161c690 Adds new result class to show a functions success or failure.
continuous-integration/drone/push Build is passing
2020-12-11 16:02:18 +01:00
Deukhoofd 0116ed8f4c Fix specialization error.
continuous-integration/drone/push Build is passing
2020-12-11 15:37:46 +01:00
Deukhoofd 26fea2ac20 Reorganise memory model to make it clear Memory.hpp should be referenced.
continuous-integration/drone/push Build is passing
2020-12-11 15:29:27 +01:00
Deukhoofd c4a4aedb04 Even more documentation.
continuous-integration/drone/push Build is passing
2020-12-11 15:25:24 +01:00
Deukhoofd d133b0a6fb Adds documentation and fixes a couple issues.
continuous-integration/drone/push Build is failing
2020-12-11 15:22:21 +01:00
Deukhoofd efdce7b74c Several fixes for new memory model.
continuous-integration/drone/push Build is failing
2020-12-11 15:12:17 +01:00
Deukhoofd 0e6ae18a32 Reworked memory model.
continuous-integration/drone/push Build is failing
2020-12-11 14:58:16 +01:00
Deukhoofd ea97089e23 Fix build.
continuous-integration/drone/push Build is passing
2020-10-23 16:52:22 +02:00
Deukhoofd 09bc55ec94 Allow disabling signal handling, turn signal handling off by default.
continuous-integration/drone/push Build is failing
2020-10-18 17:18:27 +02:00
Deukhoofd c445536aed Fixed issue preventing THROW macro having easy access to sstream.
continuous-integration/drone/push Build is passing
2020-10-15 18:05:51 +02:00
Deukhoofd c3606c25f6 Replaces some overrides with final for minor performance gains.
continuous-integration/drone/push Build is passing
2020-10-15 17:54:06 +02:00
Deukhoofd edaa9f496d Modify THROW macro to use a constexpr function for file name, instead of macro.
continuous-integration/drone/push Build is passing
This prevents potential warnings (such as clang-tidy's "cppcoreguidelines-pro-bounds-pointer-arithmetic") from showing up when using this macro.
2020-10-09 13:48:21 +02:00
Deukhoofd 5fcebd4d4d Implements faster hash mechanic for StringView.
continuous-integration/drone/push Build is passing
2020-10-09 13:23:32 +02:00
Deukhoofd 77e9f3f768 Revert "Make CInterface exported functions be contained in .h files, instead of .cpp."
continuous-integration/drone/push Build is passing
This reverts commit 9abdbecd
2020-10-02 18:44:29 +02:00
Deukhoofd dff8c4d15c Attempt creating a tag file online.
continuous-integration/drone/push Build is passing
2020-09-25 18:11:53 +02:00