Commit Graph

1102 Commits

Author SHA1 Message Date
15bc41dd35 [ox/std] Fix StringView(BaseStringView const&) constructor 2023-11-29 00:35:34 -06:00
3a62650d62 [ox/std] Make String(StringView) constructor explicit, add StringLiteral 2023-11-28 23:31:11 -06:00
7008ebfb40 [ox/std] Make HashMap use StringView for string lookups 2023-11-28 23:29:10 -06:00
709dc36d0b [ox/mc] Fix read test 2023-11-27 22:02:38 -06:00
ecc49a63b0 [ox] Change log channel delimiter from :: to . 2023-11-25 20:58:35 -06:00
a84a829769 [ox] Cleanup String/StringView conversions, MallocaPtr 2023-11-23 01:34:16 -06:00
b12097769e [ox/std] Fix MSVC warnings 2023-11-14 20:23:21 -06:00
e9c5134286 [ox/model] Fix compile error when instantiating ModelHandlerAdaptor for readers 2023-11-14 20:21:02 -06:00
b7a1236bae [ox/model] Fix MSVC warning 2023-11-14 20:19:25 -06:00
d386bc8c91 [ox/mc] Fix MC read alloca in a loop 2023-11-13 23:42:09 -06:00
3eec0a149d [ox/mc] Cleanup 2023-11-13 22:59:11 -06:00
8d2c8df014 [ox/mc] Fix an unwanted formatting "correction" from Visual Studio 2023-11-13 21:53:21 -06:00
18ace3ceff [ox/mc] Fix use of uncaptured var in lambda 2023-11-13 21:50:11 -06:00
597a8c736e [ox/mc] Fix alloca use in loop 2023-11-12 00:53:25 -06:00
d9b676d1b2 [ox/std] 32 bit system fixes 2023-11-12 00:41:47 -06:00
158115c29f [ox] Fix most MSVC warnings 2023-11-12 00:31:13 -06:00
77e475980d [ox/model] Restore assert in modelFieldCount 2023-11-11 23:30:34 -06:00
3fbb2a0086 [ox/logconn] MSVC fixes 2023-11-11 21:57:25 -06:00
ce20282be0 [ox/std] MSVC fix 2023-11-11 21:14:59 -06:00
7ee52db6a1 [ox] MSVC fixes 2023-11-11 20:24:11 -06:00
4ae6fd7c17 [ox/std] Add uint_t 2023-11-05 10:18:39 -06:00
4d09eecb0d [ox/std] Fix Linux-AArch64 build 2023-10-30 01:20:21 -05:00
66d7627ed8 [ox/claw] Add missing file 2023-10-22 21:16:39 -05:00
ebb8b12c4e [ox/fs] Add ox::Buffer constructor to FileSystemTemplate 2023-10-22 20:35:57 -05:00
1f78ea1f37 [ox] Add Reader_c and make MetalClawReader use it 2023-10-22 16:42:03 -05:00
ba30caa9b2 [ox/std] Add SpanView 2023-09-30 13:38:19 -05:00
5cdf241321 [ox/preloader] Fix for what appears to be a bug in Apple Clang 2023-09-28 21:01:18 -05:00
206b2825c8 [ox/std] Add Span type 2023-09-16 18:32:06 -05:00
b6f86551e9 [ox/std] Make assert functions take StringViews instead of C strings 2023-09-02 01:11:40 -05:00
1a7e551025 [ox/std] Fix Vector for MSVC 2023-08-30 21:01:20 -05:00
cc0da5dd6a [ox] Tell CMake that Ox is C++ only 2023-08-26 22:39:33 -05:00
6bd7a84ddd [ox] Cleanup, fix GBA build 2023-08-10 00:26:45 -05:00
f4ef762952 [ox/std] Fix broken invocation of Vector::reserveInsert 2023-08-09 00:31:56 -05:00
987cd34df0 [ox/std] Fix Linux build 2023-08-09 00:04:08 -05:00
da6eb40966 [ox/std] Make ox::make handle std::exception to report what() 2023-08-09 00:01:17 -05:00
e5a7d8c0a9 [ox] Fix FreeBSD build 2023-08-08 23:57:09 -05:00
f514b33b06 [ox/std] Fix some type implicit conversions in ox_itoa 2023-07-16 13:53:28 -05:00
ddcb53a535 [ox/std] Make mgba logging functions compile on all platforms 2023-07-11 21:58:22 -05:00
280130c3cd [ox] Correct tests path 2023-07-01 16:17:41 -05:00
6166ab15db [ox] Make tests search in {build output}/bin dir for tests 2023-07-01 16:03:19 -05:00
7755168004 [ox/logconn] Change some C strings to StringViews, add macro for initializing logger 2023-06-26 23:58:10 -05:00
cf5786a4ed [ox/std] Change InitTraceMsg::appName from C string to BString<128> 2023-06-26 23:57:17 -05:00
741026680a [ox/std] Add Result::to for passing value to functions 2023-06-25 17:21:56 -05:00
822090f309 [ox/std] Make Vector functions also noexcept for pointers 2023-06-25 17:21:29 -05:00
7437487340 [ox/std] Make many Vector functions conditionally noexcept 2023-06-18 01:39:35 -05:00
dde51151ff [ox] Cleanup Vector 2023-06-13 23:51:13 -05:00
20e5b7e617 [ox/std] Fix code duplication 2023-06-10 01:15:55 -05:00
bb85e6ab6c [ox/std] Add UUID::toString variant that takes a Writer_c 2023-06-09 22:07:19 -05:00
b67359ddb0 [ox] Make StringView write function take a Writer_c reference 2023-06-09 21:14:28 -05:00
b2103e558e [ox/mc] Make write's setTypeInfo return Error if unable to allocate field presence buff 2023-06-09 20:53:20 -05:00
e22743961a [ox] Make model system's setTypeInfo return an Error 2023-06-09 20:49:36 -05:00
5a021043f4 [ox] Make OC and Claw writers take const values 2023-06-08 21:57:43 -05:00
23054c9f6f [ox] Remove SerStr 2023-06-08 21:34:33 -05:00
2c8e073172 [ox] Cleanup serialization writers, make MC and Claw use Writer_c 2023-06-08 21:18:26 -05:00
6f5f2c7219 [ox/mc] Make writeOC work with const inputs 2023-06-08 01:13:24 -05:00
ce4dcdcd18 [ox/mc] Make MC Write use Writer_c 2023-06-08 00:56:02 -05:00
3fdfee33a9 [ox] Fix remaining implicit conversion issues 2023-06-07 00:41:09 -05:00
acf04665bc [ox/fs] Cleanup formatting 2023-06-06 00:29:17 -05:00
7bccfc8a00 [ox] Fix Xcode build errors 2023-06-06 00:17:51 -05:00
8c7f6ffafc [ox/fs] Make directAccess functions const 2023-06-03 22:04:02 -05:00
25954d5503 [ox/std] Make stacktrace code more readable 2023-06-02 20:29:58 -05:00
5c8242490e [ox] Make panic always print message 2023-06-01 23:48:39 -05:00
07284ac595 [ox/std] Cleanup geo types to not depend on ox/model 2023-06-01 23:19:51 -05:00
d598efb5ea [ox] Put oxReturnError and oxThrowError in brackets 2023-05-30 20:51:54 -05:00
fa4e3c6329 [ox] Cleanup 2023-05-30 20:50:47 -05:00
90ef5866dd [ox] Add makeCatch function 2023-05-30 20:49:57 -05:00
4e0ce57594 [ox/std] Add geo types 2023-05-30 20:43:39 -05:00
bd665cfc35 [ox] GCC13 fix 2023-05-19 21:35:00 -05:00
fcf0a9be95 [ox] Fix for a broken new memory safety check in GCC13 2023-05-19 21:32:18 -05:00
546ce9b253 [ox] Get rid of ox subdirectory in lib install path 2023-04-19 20:45:18 -05:00
9af8530e24 [ox/std] Cleanup 2023-04-02 09:42:49 -05:00
b8c0bbe03a [ox] Switch Mac to use builtin bit_cast 2023-04-01 23:23:36 -05:00
19d5641c6e [ox/oc] Fix unnecessary copy 2023-03-11 16:57:04 -06:00
21131a35a3 [ox/preloader] Cleanup NativePlatSpec 2023-03-11 16:56:44 -06:00
b58431c09a [ox/std] Add all_of and any_of range functions, cleanup 2023-03-11 16:46:17 -06:00
9583b223ca [ox/std] Add test for non-constexpr version of UUID::isNull() 2023-03-04 16:12:51 -06:00
aab02f25c0 [ox/std] Updated UUID test for changed random num gen 2023-03-04 02:49:52 -06:00
c75ff7881f [ox/std] Add UUID::isNull() 2023-03-03 23:24:38 -06:00
06f6656c85 [ox/std] Shift away 4 lowest bits of random numbers generated in UUID,
as Xoroshiro128+ is apparently weaker for those bits
2023-03-03 00:57:25 -06:00
317e714373 [ox/preloader] Cleanup 2023-02-25 22:25:14 -06:00
1767821161 [ox/std] Fix various issues with Optional copy and move constructors 2023-02-19 16:48:35 -06:00
edd21017d3 [ox/std] Make Optional more like std::optional 2023-02-19 01:40:29 -06:00
2e051f947d [ox/mc,oc] Add support for ox::Array serialization 2023-02-18 17:07:14 -06:00
762804905a [ox] Make UUID serializable, and make serialize as a string in OC 2023-02-16 01:36:20 -06:00
d17f536832 [ox/std] Add write(Writer_c, StringView) 2023-02-13 21:35:37 -06:00
b6ed919b01 [ox/std] Fix ox::join to work with list types that done have a front function 2023-02-13 19:08:46 -06:00
777a6d54f0 [ox/std] Add test for UUID::generate() and fix bug 2023-02-13 19:08:04 -06:00
a96d173fdc [ox/std] Fix BString(StringView) constructor 2023-02-12 22:30:28 -06:00
ba7ee92ad2 [ox/fs] Add error messgae to PassthroughFS::statPath 2023-02-12 21:45:18 -06:00
6d4c57d37d [ox/std] Fix BString == and != operators 2023-02-12 21:14:16 -06:00
54eebf81da [ox/std] Add UUID str conv test and fix bugs found 2023-02-12 20:38:29 -06:00
2b821b73ff [ox/std] Add UUID fromString 2023-02-12 00:02:07 -06:00
e19559d7a7 [ox/claw] Add non-ox::Buffer version of readClaw function 2023-02-11 23:59:37 -06:00
af3de01e1b [ox/preloader] clang-tidy fix 2023-02-11 23:56:03 -06:00
9561a68483 [ox/std] Fix BString assign and compare 2023-02-11 02:32:24 -06:00
86f639c7f7 [ox/std] Add tests for UUID int to hex str conversion 2023-02-08 21:40:29 -06:00
4f906f6e47 [ox/std] Add UUID implementation 2023-02-08 21:37:17 -06:00
dba31d2cd9 [ox/model] Fix ModelUnion to copy type on copy and move 2023-02-07 23:19:18 -06:00
eb55144211 [ox/std] Make ox::min/max use values instead of refs for integrals, add CommonRefWith 2023-02-07 01:35:50 -06:00
5de5eee215 [ox/std] Fix alignment of Optional's buffer 2023-02-07 01:33:30 -06:00
d571d49cce [ox/std] Fix String to StringView compare 2023-02-07 01:30:59 -06:00
6769bb63d9 [ox/std] Fix Optional 2023-02-06 22:43:30 -06:00
3c9e6d10ea [ox/std] Add StringView split and find functions 2023-02-05 00:33:27 -06:00
b1b2780eb9 [ox] GBA fixes 2023-02-03 21:56:30 -06:00
26a1f2e4ad [ox/fs] Add error message to an error 2023-02-03 02:02:57 -06:00
83589287bc [ox/model] Add default type params arg to buildTypeId 2023-02-03 00:22:11 -06:00
17cb40c0ec [ox/model] Add type name and version functions overload option 2023-01-30 23:13:07 -06:00
838187797a [ox/fs] Fix a log message's channel 2023-01-27 01:34:43 -06:00
1cfa594c92 [ox/fs] Wrap overloaded virtual functions in FileSystem 2023-01-27 00:00:35 -06:00
94cb2e982a [ox] Add logconn for Bullock logging 2023-01-25 02:08:52 -06:00
e1fa48ea2f [ox/model] Fix FieldCounter to count CString fields 2023-01-25 00:21:23 -06:00
4cb6992178 [ox/std] Add Vector::emplace 2023-01-14 19:42:17 -06:00
3cd638737a [ox] Update more C strings to StringViews 2023-01-03 03:31:22 -06:00
5508dc5dc0 [ox/std] Make String::beginsWtih and endsWith functions that take StringViews 2023-01-03 03:30:33 -06:00
55ea405a54 [ox/std] Add toStdStringView and endsWith functions 2022-12-31 17:14:09 -06:00
ca07dc6152 [ox] Replace C strings in FS with StringView 2022-12-31 14:58:35 -06:00
887d3b3d13 [ox/std] Remove some unnecessary/breaking checks in BasicString::set functions 2022-12-29 02:12:11 -06:00
b08559b3f3 [ox/model] MSVC fix 2022-12-19 00:19:28 -06:00
c9f1b3aaa3 [ox/claw] MSVC fix 2022-12-18 23:27:59 -06:00
b818c1e3d6 [ox/std] Change __has_include_nexts to __has_include 2022-12-18 21:11:41 -06:00
706f5b345a [ox/claw] Remove ambiguous second TypeInfoCatcher::setTypeInfo 2022-12-18 21:11:12 -06:00
22a7ff74ce [ox/std] Fix unnecessary implicit sign conversion 2022-12-18 21:04:44 -06:00
4077f0bddc [ox] Fix for Windows 2022-12-18 21:04:44 -06:00
1dddf4ad9d [ox] MSVC fixes 2022-12-18 16:39:20 -06:00
839a791ddd [ox/std] Add ox::make to wrap new in exception handling 2022-12-17 13:54:26 -06:00
26d6143006 [ox/model] Change <> markers for type params to ## in type IDs to deal with NTFS' ineptitude 2022-12-17 13:38:59 -06:00
44f45e64e9 [nostalgia/studio] Add ClawViewer for unknown types 2022-12-15 01:36:55 -06:00
461e3d61ef [ox/preloader] Add ptr handling 2022-12-05 17:40:22 -06:00
030d46a999 [ox/std] Cleanup mGBA logging 2022-12-05 17:28:42 -06:00
cd4a9300a5 [ox/preloader] Fix Vector preloading 2022-12-04 22:31:51 -06:00
fe42702e88 [ox/oc] Fix to iterate to next field of parent after reading array 2022-12-04 14:55:29 -06:00
ea7ccf40b1 [ox/model] Fix null ptr use when describing nested Vectors 2022-12-04 01:48:56 -06:00
7434d949e7 [ox/std] Begin mGBA registers with REG_MGBA_ 2022-12-03 17:24:58 -06:00
1868d53ecb [ox/std] Remove write size output from mGBA logging function 2022-12-03 17:00:00 -06:00
3f86932ad8 [ox/std] Add mGBA logging 2022-12-03 16:48:07 -06:00
3040e6c90a [ox/preloader] Make Preloader use small string section of strings when able 2022-12-03 16:32:56 -06:00
517ffddf04 [ox/preloader] Fix ox::String handling, add start and end alloc functions 2022-12-03 01:47:04 -06:00
5bac497293 [ox/preloader] Fix SizeCather::pad 2022-12-03 01:43:45 -06:00
86c33019fe [ox/std] Fix VectorMemMap sizeOf 2022-12-03 01:42:23 -06:00
a946f8dae1 [ox/model] Fix sizeOf functions 2022-12-03 01:32:09 -06:00
7c07fc9726 [ox/preloader] Make Preloader::pad protected 2022-12-01 02:33:45 -06:00
5be8ed533e [ox/preloader] Fix alignment and add preload function 2022-12-01 01:59:27 -06:00
593a57a0ce [ox] Make setTypeInfo functions in model handlers consistent 2022-12-01 00:09:05 -06:00
50e2fadcd1 [ox/oc] Fix sub-object read not to return early 2022-11-30 22:51:57 -06:00
ae26838324 [ox/preloader] Rename BufferWriter::data() to BufferWriter::buff(), make return type const ref 2022-11-30 20:49:52 -06:00
e0381cd98a [ox/preloader] Remove unused files 2022-11-30 20:49:13 -06:00
512522711a [ox/fs] Cleanup unnecessary c_str()s 2022-11-30 20:48:52 -06:00
858a30ee08 [ox/fs] Fix FileAddress paths initialized from StringView to null terminate 2022-11-30 20:48:09 -06:00
1839b68a4a [ox/claw] Remove temporary assert that was placed for debugging 2022-11-30 20:47:28 -06:00
04c882388e [ox/preloader] Remove GbaPlatSpec 2022-11-30 02:26:24 -06:00
cbb496c59f [ox] Add StringView, Writer system, Preloader system 2022-11-30 01:45:11 -06:00
c6c18c18d3 [ox/std] Add support for custom allocators in Vector 2022-08-16 01:30:12 -05:00
bc98c42be6 [ox/model] Make TypeStore::getInit always overwrite old value 2022-08-13 20:42:06 -05:00
84d54ba340 [ox/mc] Fix decoding of int64s 2022-08-13 20:30:48 -05:00
714d9fe433 [ox/std] Add support for integral types as keys in HashMap 2022-08-07 10:23:09 -05:00
28960dd680 [ox/std] Add toLittleEndian and toBigEndian functions 2022-08-07 10:22:45 -05:00
c6ba893583 [ox/std] Add default constructor to ox::Error 2022-08-01 21:49:34 -05:00
57785ebf99 [ox/model] Remove unused includes 2022-08-01 21:49:07 -05:00
0d9c7867aa [ox/std] Add is_const_v 2022-07-30 18:28:57 -05:00
b14e41d057 [ox/fs] Change FileAddress default type from Inode to None 2022-07-29 21:37:58 -05:00
f8f5b059ed [ox/std] Fix Result::moveTo to not move if error 2022-07-24 01:22:40 -05:00
1302d5bf85 [ox] Add const char *const* fieldString handlers to OC and MC writers 2022-07-21 02:18:56 -05:00
6b9d9c50c7 [ox/fs] Add separate case for write in FileLocation model 2022-07-21 02:17:11 -05:00
3a2995a67b [ox/std] Fix Vector move to not do small vector opt in consteval 2022-07-19 21:10:50 -05:00
6ddeb29c92 [ox/model] Fix move constructors and operators in ModelValue system 2022-07-19 21:09:02 -05:00
e71866b1a2 [ox/model] Remove _t from integer type descriptors 2022-07-19 20:49:13 -05:00
63c8503cb6 [ox/std] Remove std::iterator 2022-07-14 21:37:04 -05:00
94e3ed217a [ox] Fix for GCC pedantry around potential null ptrs that will never happen 2022-07-13 21:20:11 -05:00
ca9bf786b1 [ox/fs] Make some PassThroughFS functions noexcept 2022-07-12 00:52:28 -05:00
82dc1895d5 [ox/std] Fix VectorAllocator copy constructor to take a const reference 2022-07-10 16:01:55 -05:00
3310dbba51 [jsoncpp] Add MSVC check 2022-07-09 22:05:53 -05:00
793f635d2c [ox/model] Change B:* type names to B.* 2022-07-09 21:30:11 -05:00
522bb42e8f [ox/model] Remove ModelObject copyModel and moveModel operations
These operations will require a lot more work to work correctly. This feature might be worth revisiting at some point though.
2022-07-09 01:43:21 -05:00
3ca252320f [ox/model] Remove ModelValue::operator= and add iterators to ModelObject 2022-07-09 01:02:30 -05:00
f8d2b9e1a7 [ox/mc] Remove debug line from test 2022-07-09 00:43:28 -05:00
93e72ae938 [ox/model] Fix Vector support for ModelValue system 2022-07-07 20:02:26 -05:00
7d95dbaa99 [ox/fs] Fix PassthroughFS mkdir for recursive cases 2022-07-04 12:40:57 -05:00
ca64f95be3 [ox] Overhaul serialization/model system and add ModelValue/ModelObject/ModelUnion variant system 2022-07-04 02:39:20 -05:00
bc391b45fc [ox/model] Cleanup alreadyExisted checks in DescWriter 2022-05-29 22:35:36 -05:00
c4a1655a8f [ox] Make model type version mandatory 2022-05-29 22:21:05 -05:00
ee851d7013 [ox/claw] Add readClaw function that uses an existing instance of T 2022-05-29 01:19:25 -05:00
40cc222cd8 [ox/model] Add Reflect op type, fix union field type output, bump desc type versions 2022-05-29 01:17:10 -05:00
d5252a45d3 [ox/oc] Make write omit lists if length is 0 2022-05-28 20:33:05 -05:00
885f4a8713 [ox/std] Make Optional run destructor and constexpr friendly 2022-05-28 19:56:43 -05:00
9c3a46d144 [ox] Make TypeStore own all type info 2022-05-28 19:55:46 -05:00
440d9c0a46 [ox/std] Add another redundant check to suppress GCC's pedantry 2022-05-28 18:58:33 -05:00
779b18e410 [ox/std] Add operator std::string and operator const char* to String 2022-05-28 03:19:50 -05:00
addc2233e7 [ox/std] Make HashMap::at return a pointer instead of reference 2022-05-28 03:18:10 -05:00
dfd6670dfe [ox/std] Delete UniquePtr copy operators 2022-05-28 02:37:15 -05:00
9417307a8e [ox/std] Fix problems in building with GCC 12 2022-05-25 01:07:48 -05:00
c7af7bc54c [ox/fs] Fix memory leak in FileAddress move 2022-05-24 20:31:30 -05:00
f2ddd15d63 [ox] Fix compiler warnings 2022-05-21 16:17:32 -05:00
4ee08441b0 [ox/claw] Fix error codes to differ 2022-05-19 22:22:31 -05:00
71f6364ea3 [ox/fs] Fix FileAddress(String) to allocate correct amount of memory 2022-05-18 03:27:45 -05:00
b5210ff897 [ox/std] Add ox::errCode for extracting error code from Error 2022-04-10 03:04:15 -05:00
9d74eca436 [ox/std] Use std::construct_at in Vector instead placement new 2022-04-10 03:03:07 -05:00
cf7f9b9088 [ox/std] Add std::construct_at 2022-04-10 03:02:57 -05:00
a02d496de5 [ox/std] Add Result::Result(const Result<U> other) 2022-03-26 16:53:00 -05:00
82021b8ee5 [ox] Cleanup mc and std tests 2022-03-24 20:47:25 -05:00
803cd28087 [ox/fs] Add FileAddress::FileAddress(ox::String) and FileAddress::operator==(ox::String) 2022-03-24 20:45:22 -05:00