Commit Graph

15958 Commits

Author SHA1 Message Date
Richard Feldman
c8454d0f9b
Merge pull request #3148 from rtfeldman/bindgen-recursive-union
Bindgen normal recursive unions
2022-05-29 12:19:11 -04:00
Richard Feldman
729c849b51
Don't special-case bindgen for single-tag unions 2022-05-29 00:03:30 -04:00
Richard Feldman
1f9040460a
Revert "bindgen TypeAlias for single-tag unions"
This reverts commit 93ec2f8465.
2022-05-28 23:56:00 -04:00
Richard Feldman
93ec2f8465
bindgen TypeAlias for single-tag unions 2022-05-28 23:54:16 -04:00
Richard Feldman
2c230cc92a
debug_assert that tags is nonempty 2022-05-28 23:21:10 -04:00
Richard Feldman
6948f838a9
The smallest paperclip 2022-05-28 23:17:41 -04:00
Richard Feldman
0718a15ae0
Fix gen_rs tests 2022-05-28 23:12:17 -04:00
Richard Feldman
46ea5a7d3b
Fix non-recursive union bindgen 2022-05-28 23:09:41 -04:00
Richard Feldman
31ef0d117a
Fix into_ and as_ for non-recursive unions 2022-05-28 22:48:53 -04:00
Richard Feldman
368a9d4a4e
Fix nullable-unwrapped bindgen test 2022-05-28 20:42:26 -04:00
Richard Feldman
46a7d341a3
Fix nullable-unwrapped Debug instance 2022-05-28 20:40:43 -04:00
Richard Feldman
efbbe12ba1
Fix constructors, into_, and as_ for nullable-unwrapped 2022-05-28 20:20:07 -04:00
Richard Feldman
f6b1786ab5
Fix missing dereference 2022-05-28 19:28:12 -04:00
Richard Feldman
0fec0e85a6
Fix missing "f" prefix for tag union payloads 2022-05-28 19:27:26 -04:00
Richard Feldman
8369e376b0
Don't wrap 1-tuples in parens 2022-05-28 19:27:18 -04:00
Richard Feldman
7ded31cbc3
Drop RocTypes::TransparentWrapper 2022-05-28 19:20:55 -04:00
Richard Feldman
bdf4d9d3cc
Remove unnecessary placeholder string 2022-05-28 19:20:08 -04:00
Richard Feldman
524ae1e3d8
Use RocType::TagUnionPayload for tag union payloads 2022-05-28 19:17:10 -04:00
Richard Feldman
65a5971183
Consolidate numeric variants into RocType::Num 2022-05-28 16:01:52 -04:00
Richard Feldman
376198344f
Fix infinite recursion in has_float 2022-05-28 15:50:03 -04:00
Richard Feldman
5c7a5998ac
Remove name from RocType::RecursivePointer 2022-05-28 15:42:34 -04:00
Richard Feldman
405c5a65e3
Revert "Attempt to fix infinite recursion in has_float"
This reverts commit 2a8acb0f49.
2022-05-28 15:34:13 -04:00
Richard Feldman
2a8acb0f49
Attempt to fix infinite recursion in has_float 2022-05-28 15:33:56 -04:00
Richard Feldman
ecfcdc12c3
Record known recursive types 2022-05-28 15:32:47 -04:00
Richard Feldman
0de87593af
Drop unnecessary function 2022-05-28 15:32:34 -04:00
Richard Feldman
daef1b62ee
Use RecursivePointer and new fields in bindgen_rs 2022-05-28 13:00:27 -04:00
Richard Feldman
8a22cfbf3c
Drop some unused variables and arguments 2022-05-28 13:00:07 -04:00
Richard Feldman
09fbfe621c
Have load use env.vars_to_types 2022-05-28 12:56:25 -04:00
Richard Feldman
ce0422186d
Store type name in RocType::RecursivePointer 2022-05-28 12:43:39 -04:00
Richard Feldman
17a19818b6
Have Env::vars_to_types handle recursive pointers 2022-05-28 12:29:07 -04:00
Richard Feldman
d5ce6a3954
Drop types::Field in favor of RocType::RecursivePointer 2022-05-28 12:28:28 -04:00
Richard Feldman
96da12074d
Add RocType::PENDING_RECURSIVE_POINTER 2022-05-28 12:27:20 -04:00
Richard Feldman
8866498469
Add RocType::RecursivePointer 2022-05-28 11:55:40 -04:00
Richard Feldman
13acea4704
Revert "Attempt at making recursive tag unions better"
This reverts commit 51e69e93c7.
2022-05-28 11:48:42 -04:00
Richard Feldman
51e69e93c7
Attempt at making recursive tag unions better 2022-05-28 11:48:29 -04:00
Richard Feldman
ea644c3360
Merge pull request #3132 from rtfeldman/parse-def-soa 2022-05-28 01:55:01 -04:00
Richard Feldman
514595cca7
Fix recursive tag union bindgen CLI test 2022-05-27 23:08:21 -04:00
Richard Feldman
29bc67a12f
Debug print tag union payloads as tuples 2022-05-27 23:01:07 -04:00
Richard Feldman
f2a7ecb392
Remove incorrect pointer indirection 2022-05-27 22:45:17 -04:00
Richard Feldman
01ba5e8f36
Drop obsolete comment 2022-05-27 21:39:31 -04:00
Richard Feldman
498bc9a88e
Fix a Debug derivation 2022-05-27 21:39:17 -04:00
Richard Feldman
266e62820e
Make Recursiveness derive Copy 2022-05-27 21:38:41 -04:00
Richard Feldman
f30897c78d
Always untag the pointer in recursive unions 2022-05-27 20:07:37 -04:00
Richard Feldman
fb5924ab61
Use self.pointer in more places, where appropriate 2022-05-27 20:07:37 -04:00
Richard Feldman
448e1ca717
Generate a separate union for recursive tag unions 2022-05-27 20:07:37 -04:00
Richard Feldman
22b849bd82
Don't use ptr::read for borrowed payloads 2022-05-27 20:07:37 -04:00
Richard Feldman
38969cde68
Use ptr::read over deref, to avoid move error 2022-05-27 20:07:37 -04:00
Richard Feldman
014a9deaf7
Actually use discriminant argument 2022-05-27 20:07:36 -04:00
Richard Feldman
5edb4fd26d
Return owned and borrowed payloads differently 2022-05-27 20:07:36 -04:00
Richard Feldman
08a93d0d94
Construct tag payloads from tupled args 2022-05-27 20:07:36 -04:00