-
Notifications
You must be signed in to change notification settings - Fork 258
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(Rust): Implement TypeMeta part of the compatibility features (#1789
) ## What does this PR do? ### Refine code struct and implement some compatibility features 1. Split fury_meta file into individual files, as the file is too large to be easily read. There are a lot of features should be implemented by macro, split it is necessary. 2. Implement compatibility by the macro, which will now generate a pattern match expression. 3. Write type meta to binary when serializing objects. 4. Read type meta for the pattern match which is generated at compile time when deserializing. 5. Replace lazy_static by Once for it has been stabled in stdlib ### Some unimplemented features 1. Add a v-table for looking up generic methods by type_id, which is used for support the Any type. 2. Support draining unused binary data when receiving an unregistered type.
- Loading branch information
1 parent
6aa7686
commit 0e18130
Showing
37 changed files
with
847 additions
and
570 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.