Commit graph

64 commits

Author SHA1 Message Date
Janis 47dbb8e3d1 serialization of UStructs/UClasses/AActors 2023-06-19 16:12:49 +02:00
Janis e74ed77703 unreal type stores object ref to object, and wrapper for accessing dependencies 2023-06-19 16:11:58 +02:00
Janis 74940c5696 convert package UObject into PackageRefs 2023-06-19 16:11:25 +02:00
Janis 2131aa59af actor as seperate struct type 2023-06-19 16:10:55 +02:00
Janis b3608b2968 use existing functions for parsing property
- this means not being able to resolve the type of the field is a hard error
2023-06-17 16:51:21 +02:00
Janis 46a5b9bb0e parse ufunction into ClassMethod 2023-06-17 16:49:46 +02:00
Janis 77df17392c stuff that i mostly dont remember but refactoring in progress init consequences
of not looking at this for a month and not having commited anything before...........
2023-06-17 16:49:07 +02:00
Janis eef7ce3cfc refactor in progress 2023-05-25 19:56:24 +02:00
Janis 4af21ba271 removed old files/modules 2023-05-23 09:52:06 +02:00
Janis b1bf442a27 idkkkkkkkkkkkkkkk 2023-05-23 00:29:19 +02:00
Janis 1e059a3b92 fname new doesnt need static str, return tuples for methods, constr for structs 2023-05-12 18:09:07 +02:00
Janis 285ae4b56f linting warning disabled, add all super classes to dependencies 2023-05-12 14:05:59 +02:00
Janis 1badd4c698 proper enumeration of names and finding names in tabl e 2023-05-12 13:24:22 +02:00
Janis f88c890210 getter for fnames, partial sdk generation, canon arg names 2023-05-12 12:13:20 +02:00
Janis 406146e772 serial number accessor, moved weakptr to ark-sdk 2023-04-23 19:50:22 +02:00
Janis 396ee1e809 allocator api for TArray, fixes
- check if class is AActor when checking if type is an actor type with A prefix
- param types public, with public fields
- sort types alphabetically when generating files
2023-04-23 05:12:48 +02:00
Janis 813b0bdaf6 fixes
- get by index for objectarray
- tassetptr type
- lowercase function parameters to avoid aliasing with type names
- filter out empty packages
- fix objectflags for ark/ue4.5
2023-04-22 21:37:23 +02:00
Janis 0987e57963 renamed field getters, unsafe cast
- renamed field getter functions to just the field, and field_mut for &mut
getters
- made casting `unsafe` to make sure it explicitly is checked each time
- fixed injected types being NonNull<T>
2023-04-22 02:13:14 +02:00
Janis ab27f8ba82 smol 2023-04-22 01:19:31 +02:00
Janis 720065242c made GObjects generic with respect to the object type 2023-04-22 01:19:15 +02:00
Janis 3be8219eca pointer helper types that the sdk uses 2023-04-22 01:02:45 +02:00
Janis a0d296053c filter out and dont process default/anon types 2023-04-22 01:02:27 +02:00
Janis f2366991f1 various fixes
- only generate at most 256 variants for an enum
- only generate methods trait for classes, also depend on AsUObject trait
- declare func variable in methods as mut
- swap out params
2023-04-22 01:01:00 +02:00
Janis 3f16ac51c6 deriving eq and partial eq, and clone for structs
- public access to tuple field
- casting in AsPtr fix
- generate_find_object relies on external implementation
2023-04-21 23:01:48 +02:00
Janis 06c1a519d3 allow access to inner uobject for casting 2023-04-21 23:01:18 +02:00
Janis 0d4dbfe552 unique method and field names for classes and structs 2023-04-21 22:11:34 +02:00
Janis b1945fda35 move casting of types to into process_event function 2023-04-21 22:03:25 +02:00
Janis c8702b3322 create sdk dir 2023-04-21 22:03:17 +02:00
Janis 93d42f6be7 correct casting 2023-04-21 22:03:11 +02:00
Janis f8096cbba5 suppress format warnings 2023-04-21 22:02:39 +02:00
Janis efcc14fc1c removed underscore from field and method traits because rust doesnt like it 2023-04-21 22:02:21 +02:00
Janis 903d05911a static class returns option<class>, not class 2023-04-21 22:01:46 +02:00
Janis 8c195f224b impl sync and send for types (🥴) as well as "AsObject" for casting for objects 2023-04-21 22:01:11 +02:00
Janis ed5c4a5702 dont derive copy from unsafecell type 2023-04-21 22:00:48 +02:00
Janis df079b7af6 enums only as repr(u8) 2023-04-21 22:00:35 +02:00
Janis 30cd320e66 formatting fixes 2023-04-21 19:07:07 +02:00
Janis 221ad25ff6 enum generation 2023-04-21 18:43:04 +02:00
Janis b51164304f renamed injected types with U/F/E/A prefix 2023-04-21 18:40:39 +02:00
Janis 7c0656c37f fix for FString 2023-04-21 18:18:22 +02:00
Janis fad2175aa2 enum name and variant names more readable 2023-04-21 18:18:05 +02:00
Janis 8d2f0ab142 UEnum, UFunction and UProperty injection 2023-04-21 17:58:49 +02:00
Janis 6ea9e81e29 representing Objects as transparent ´NonNull<UnsafeCell<u8>>´ 2023-04-21 17:33:09 +02:00
Janis 32bcc30b96 rust generation 2023-04-21 17:21:07 +02:00
Janis d1c0520316 calculating dependencies 2023-04-20 23:43:56 +02:00
Janis 211605c20c linting cleanup 2023-04-20 22:54:42 +02:00
Janis 08149329e1 parsing classes, structs and enums 2023-04-20 22:24:26 +02:00
Janis a574191066 restructured sdk generator with Package type, parsing struct types 2023-04-20 20:50:57 +02:00
Janis 69273c7e76 display for property and function types 2023-04-20 20:50:25 +02:00
Janis 2427494a0f cool features!!!!!!! 2023-04-20 20:49:21 +02:00
Janis 99a3effc4c handle possibility of missing static class (UMapProperty) 2023-04-20 20:48:54 +02:00