-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: Partial support for SDK style libraries in Rust (#510)
*Issue #, if available:* #516 *Description of changes:* First cut of actual codegen support for Rust, only for SDK-style libraries. I implemented this earlier in order to generate the "benerated" code in #413. The code is not organized terribly well and definitely under-tested, but this will naturally improve as we replace beneration with actual code generation for all the TestModels. `kms-lite` and `ddb-lite` are also updated with the latest generated code, and both include more operations that turned out to be used by the MPL and so on. Known caveats: * Unions are not supported yet - `ddb-lite/src/conversions/attribute_value.rs` is manually written. * There is a lot of code duplication which we should clean up before considering Rust codegen complete. We should also factor out a lot of the conversion code generation as it will apply to local services as well. * The Smithy build plugin doesn't support the same patching mechanism that the CLI does, so instead I've restored Mikael's hack to insert lines in `implementation_from_dafny.rs`, this time to declare the additional external modules. This will work for local services as well but I've only implement the SDK case for now.
- Loading branch information
Showing
186 changed files
with
25,736 additions
and
839 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 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[submodule "smithy-dafny-codegen-modules/smithy-rs"] | ||
path = smithy-dafny-codegen-modules/smithy-rs | ||
url = git@github.com:smithy-lang/smithy-rs.git |
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
Oops, something went wrong.