Commit Graph

226 Commits

Author SHA1 Message Date
mappu 0e8b48d1b8 genbindings: more work on integer types 2024-08-24 11:45:36 +12:00
mappu 475ebc93b4 genbindings: more exceptions 2024-08-22 21:56:25 +12:00
mappu 4c318669cc genbindings: more const, int, and pointer correctness 2024-08-22 21:56:19 +12:00
mappu 36994e6547 genbindings: more exceptions 2024-08-22 19:20:34 +12:00
mappu e629117e54 genbindings/ints: qint64 handling applies to pointer types too 2024-08-22 19:20:29 +12:00
mappu cf430b6cc5 genbindings/transform: overload disambiguation must be based on go names 2024-08-22 19:20:15 +12:00
mappu cd16ed9028 genbindings: avoid pointer copy when returning qt type by reference 2024-08-20 20:20:26 +12:00
mappu ae3de5a64c genbindings: remove empty printf specifier from log message 2024-08-20 20:19:53 +12:00
mappu c59545c956 genbindings: s/renderTypeCpp/Cabi 2024-08-20 20:19:38 +12:00
mappu 306abe1fb6 genbindings: more exceptions 2024-08-20 20:19:15 +12:00
mappu 7e78b73517 genbindings: accurate type alias tracking for static_cast<> overload resolution 2024-08-20 20:16:13 +12:00
mappu 1ea3f220e6 genbindings: improvements for deleted ctors/dtors/overloads 2024-08-20 20:10:57 +12:00
mappu f9a9b4a9b4 genbindings: further work on exceptions 2024-08-19 19:42:34 +12:00
mappu d92e87b49d genbindings/qset: skip over these 2024-08-19 19:15:05 +12:00
mappu fb538b0a3b genbindings: scan full qt include directory to find header files 2024-08-19 19:14:47 +12:00
mappu 042a86ade7 genbindings/clang: skip over more top-level ast nodes 2024-08-19 19:14:10 +12:00
mappu b5370c8728 genbindings: more integer types 2024-08-19 19:12:37 +12:00
mappu bdbeb3d1e5 genbindings: move transformblacklist into exceptions.go 2024-08-19 19:12:13 +12:00
mappu 043db615b1 genbindings: avoid generating empty files 2024-08-19 19:11:36 +12:00
mappu 926cfc7c84 genbindings: use state machine tokenization for template parameters 2024-08-19 19:11:19 +12:00
mappu 0e1630a8aa genbindings: up to 104 files 2024-08-19 17:58:26 +12:00
mappu 1222174b09 genbindings/main: up to 96 files 2024-08-18 19:02:52 +12:00
mappu d6ea4ccf80 genbindings: many more exceptions 2024-08-18 19:02:43 +12:00
mappu cf2585416f genbindings/exceptions: move header imports to exceptions.go 2024-08-18 19:02:14 +12:00
mappu 3ef53b4224 genbindings/test: add simple TestParseTypeString() test case 2024-08-18 19:01:49 +12:00
mappu b3d55cc17f genbindings: fixes for qintptr 2024-08-18 19:01:36 +12:00
mappu 33b26204f8 genbindings: move 'qt_' prefix renaming into SafeMethodName() 2024-08-18 19:01:23 +12:00
mappu 6d09ef795b genbindings: remove special-case qreal handling 2024-08-18 18:56:09 +12:00
mappu d5eeb64c86 genbindings/connect: only generate connect() stubs for the fully expanded overload 2024-08-18 18:55:28 +12:00
mappu f488e54f8b genbindings/connect: initial implementation 2024-08-18 17:48:17 +12:00
mappu c8ac62fccd genbindings/main: up to 66 files 2024-08-18 17:47:58 +12:00
mappu 3fd8ec777d genbindings: hide another unprojectable method 2024-08-18 17:47:51 +12:00
mappu ef4dc703e6 genbindings: fix qintptr cabi typing 2024-08-18 17:47:31 +12:00
mappu 441d96398f genbindings: fix QClipboard private dtor 2024-08-18 17:47:19 +12:00
mappu 6928a87b4b genbindings/static: fix not applying static for overloads 2024-08-18 16:41:57 +12:00
mappu b3ef457f7e genbindings/main: up to 60 files 2024-08-18 16:08:34 +12:00
mappu 05404c308a genbindings/cabi: skip imports for other QPlatform* family classes 2024-08-18 16:08:25 +12:00
mappu 43e32085a1 genbindings: detect and skip over receiver-method pattern 2024-08-18 15:57:40 +12:00
mappu 148d8ea6e0 genbindings: detect argcargv pattern at any location 2024-08-18 15:57:29 +12:00
mappu 2a93cbf2d3 genbindings: detect signals 2024-08-18 15:56:48 +12:00
mappu feb7b1d5f4 genbindings: standardize on log to stderr, not fmt to stdout 2024-08-18 15:55:23 +12:00
mappu 28b6684004 genbindings: better names for push_back(), fix_neg_rect() 2024-08-18 15:27:03 +12:00
mappu d8145be2da genbindings: static methods move to top-level 2024-08-18 15:24:04 +12:00
mappu 8465cc21b3 genbindings/main: up to 50 files 2024-08-17 14:11:34 +12:00
mappu 12bbea5b7c genbindings: many more unsupported exceptions 2024-08-17 14:11:19 +12:00
mappu 391c081778 genbindings: support argc/argv idiom used by QApplication ctor 2024-08-17 14:10:59 +12:00
mappu d485d8850e genbindings: fix missing QList import if there are only QList<int> uses 2024-08-17 14:10:33 +12:00
mappu 0dce1b4fe2 genbindings: more integer type handling 2024-08-17 14:10:17 +12:00
mappu 58eee48a5d genbindings: blacklist QFooPrivate 2024-08-17 14:09:51 +12:00
mappu f26735b0d5 genbindings/main: up to 28 files 2024-08-17 12:39:54 +12:00
mappu d8de68b3a2 genbindings: many fixes for different QList<T> specializations 2024-08-17 12:39:45 +12:00
mappu b87c5998b1 genbindings: bind QVector<T> as []T, like QList 2024-08-17 11:29:31 +12:00
mappu a579f80d34 genbindings: basic support for QList<> of non qt pointer type 2024-08-17 11:28:49 +12:00
mappu 9a78d87e00 genbindings: treat QRgb as unsigned int 2024-08-17 11:27:02 +12:00
mappu 5fa7bd37eb genbindings/typedefs: exclude typedefs from class pointer declarations 2024-08-17 11:25:54 +12:00
mappu 4ee89b157f genbindings/transform: come up with better overload names 2024-08-17 11:25:20 +12:00
mappu aeb667d780 genbindings: centralise ErrToComplex exceptions, add QPolygon 2024-08-17 11:25:06 +12:00
mappu a87e7a99a7 genbindings: add many more ErrTooComplex and workarounds 2024-08-15 19:53:01 +12:00
mappu 3dafa8dba4 genbindings: fix up naming for << and >> functions 2024-08-15 19:51:58 +12:00
mappu c00976ba0d genbindings/main: transform many more files, always dump our asts 2024-08-15 19:51:49 +12:00
mappu 7b86a20386 genbindings: misc 2024-08-15 19:51:31 +12:00
mappu 5db5c98bc3 genbindings: skip over more forward-declared classes in headers 2024-08-15 19:51:13 +12:00
mappu b89aeb2aa7 genbindings: try to invent better names for function overloads 2024-08-15 19:50:50 +12:00
mappu 2ccc11f57d genbindings: QStringList handling 2024-08-15 19:50:30 +12:00
mappu 5381a6b80c genbindings: rename more go reserved words 2024-08-15 19:49:38 +12:00
mappu 189a93fbca genbindings: more integer type handling 2024-08-15 19:49:09 +12:00
mappu 1102f678c4 genbindings: skip private constructors 2024-08-14 18:39:04 +12:00
mappu a6d63f33d2 genbindings: skip non-Qt classes found 2024-08-14 18:38:57 +12:00
mappu 94182079e1 genbindings: qobject + qbytearray 2024-08-14 18:34:57 +12:00
mappu d6a758ebbc genbindings: skip over more unknown ast node types 2024-08-14 18:34:46 +12:00
mappu 97402096cc genbindings: remove some redundant casts now that PVoids are gone 2024-08-14 18:34:38 +12:00
mappu 97b9e01451 genbindings: include QList header in cpp but not in h 2024-08-14 18:34:27 +12:00
mappu 8ac598fbb5 genbindings/cabi: replace qt int types with native C types in C header 2024-08-14 18:34:05 +12:00
mappu 3dcdfbd594 genbindings: add explicit int casts when calling, to select overload 2024-08-14 18:33:47 +12:00
mappu 89f4024951 genbindings/transform: fix overloads-of-optionals 2024-08-14 18:27:27 +12:00
mappu aaa1d1274b genbindings: fix NotAssign overload functions 2024-08-14 18:26:51 +12:00
mappu d7a7ae9bcf genbindings: parse typedefs (don't do anything with them yet) 2024-08-14 18:26:42 +12:00
mappu 944e04bf5d genbindings: generate multiple files in one run, cache clang ast files 2024-08-14 17:43:54 +12:00
mappu 7f552ee6a4 genbindings: fixup pointer arithmetic for returning arrays by value 2024-08-14 17:31:49 +12:00
mappu 21f1914244 genbindings: add c++ includes for all referenced Qt types 2024-08-14 17:31:35 +12:00
mappu c7f119df80 genbindings: remove Pvoid types, replace with incomplete C pointers 2024-08-14 17:31:10 +12:00
mappu 027c059b0b genbindings: add WId->uintptr typedef for QWidget.h 2024-08-11 16:54:23 +12:00
mappu 08168454c1 genbindings: qreal->double 2024-08-11 16:54:07 +12:00
mappu 4d94d4cd34 genbindings: handle function overloads 2024-08-11 16:53:58 +12:00
mappu 3419c8c0dc genbindings: QList<> support 2024-08-11 16:37:18 +12:00
mappu eb5fcfc880 genbindings: add private Go ctor for use with C types 2024-08-11 16:37:06 +12:00
mappu ab9c015501 genbindings: minor compatibility improvements for qwidget.h 2024-08-10 14:04:52 +12:00
mappu bdc13f71c4 genbindings/main: dump and generate in one pass 2024-08-10 13:32:43 +12:00
mappu 4b9b6f0791 genbindings: more aggressive skip for #include in header 2024-08-10 13:21:30 +12:00
mappu afcde0a69b genbindings: inheritance support 2024-08-10 12:54:26 +12:00
mappu 55481316ed genbindings: hide ctors that take QFooPrivate-type parameters 2024-08-10 12:54:14 +12:00
mappu daa6252848 genbindings: skip generation for =delete'd ctors 2024-08-10 12:54:00 +12:00
mappu 012b62ee06 genbindings: skip generating ctors for abstract classes 2024-08-10 12:53:48 +12:00
mappu c06acd0a1b genbindings: refactor class handling 2024-08-10 12:53:26 +12:00
mappu aaa9340808 genbindings: basic constructor support 2024-08-10 12:52:45 +12:00
mappu 545a819f81 genbindings: more type casts for pvoid types 2024-08-10 11:46:48 +12:00
mappu bc3bfa88ad genbindings: allow compilation if we return a const void* 2024-08-10 11:46:27 +12:00
mappu 05804f837e genbindings: minimal handling for metacast() returning void* 2024-08-10 11:46:07 +12:00
mappu 5321074f99 genbindings: rename qt_metacast to Metacast() 2024-08-10 11:45:48 +12:00
mappu 2283213456 genbindings: suppress deprecated warnings 2024-08-10 11:45:29 +12:00
mappu 6fb50dc267 genbindings: call correct c++ function for optional parameters 2024-08-10 11:45:19 +12:00
mappu 526fa612fc genbindings: always take Qt arguments by pointer 2024-08-10 10:37:12 +12:00
mappu d952b1ef75 genbindings/cabi: remove unused function argument 2024-08-10 10:37:12 +12:00
mappu 6a44b59b52 genbindings: fixes for functions returning void* 2024-08-10 10:37:06 +12:00
mappu d0c627e7a5 genbindings: support classes returned by value, with go finalizer 2024-08-10 10:34:54 +12:00
mappu 460b8aaef8 genbindings/cabi: add necessary header for size_t 2024-08-10 10:33:31 +12:00
mappu 91c2e0fa9b genbindings: fix missing this.h in forwarded calls from go 2024-08-10 10:33:12 +12:00
mappu 76f4323676 genbindings: add Delete() functions 2024-08-10 10:32:57 +12:00
mappu 8c572259c4 genbindings: support custom import headers in emitgo 2024-08-10 10:28:02 +12:00
mappu 9264bc6cc6 genbindings: handle QString return types 2024-08-09 18:41:33 +12:00
mappu 8f266f5202 genbindings: find all Qt types for PVOID typedefs, not just direct classes 2024-08-08 19:06:31 +12:00
mappu 2dc9d1bab7 genbindings: add QtClassType() helper 2024-08-08 19:06:14 +12:00
mappu d5e6a21ae4 genbindings: fix wrong parameter order for CABI output files 2024-08-08 18:55:47 +12:00
mappu dd004dd06b genbindings: generate better automatic names for Q_PROPERTY setters 2024-08-08 18:55:37 +12:00
mappu 85dd87e6d0 genbindings: track optional parameters in our IL, expand in AST pass 2024-08-08 18:55:22 +12:00
mappu a991feb589 genbindings: fixup header paths and header include guards 2024-08-08 18:54:36 +12:00
mappu 0c275047c3 genbindings: QString parameter forwarding with custom preamble 2024-08-08 18:54:13 +12:00
mappu 618b68aaf9 genbindings: generated go methods should always be public 2024-08-08 17:51:46 +12:00
mappu 179c37dfe0 genbindings: move type renderering to CppParameter methods 2024-08-08 17:51:29 +12:00
mappu 4b803eb453 genbindings: more accurate parameter types 2024-08-08 17:51:10 +12:00
mappu 6174c4c243 genbindings: mark IL types as public for json export 2024-08-07 18:56:14 +12:00
mappu 3a802d0f5a genbindings: further work on output generation 2024-08-07 18:51:51 +12:00
mappu 0514866d23 genbindings: add helper arguments to dump wip json 2024-08-07 18:51:30 +12:00
mappu 60d5aa55d1 genbindings: public/private visibility support 2024-08-07 18:50:39 +12:00
mappu 7319683a3f genbindings: wip 2024-08-06 14:29:12 +12:00
mappu f54814588e genbindings: initial commit 2024-08-06 13:03:23 +12:00