uniffi-rs
                                
                                 uniffi-rs copied to clipboard
                                
                                    uniffi-rs copied to clipboard
                            
                            
                            
                        Remove the need for `[External]` and `typedef` UDL definitions
We currently need these for a few reasons and I'm hoping to make them all obsolete.
- To know which UniffiTagsystem to use. This won't be necessary after #1865.
- To specify the bridge type for custom types. This is no longer needed now that #2150 is merged.
- To know the FFI type when lowering. However, this can be determined using the proc-macro metadata and we're already translating all UDL definitions to proc-macro invocations.
- To fill in required fields for the uniffi_metatypes. We can avoid this by makinguniffi_udlgenerate its own types, rather than theuniffi_metatypes. We don't need to all of that data, we just need to enough to generate the proc-macro calls. One side benefit of this is that we could remove fields inuniffi_metathat only exist to supportuniffi_udl(example)
The only downside I can see is that maybe the error messages will get worse if you misspell a type. I'm not too worried about this since I'm more and more convinced we should be pushing users away from UDL anyways.