commit | 64fd6985f064dc36edf23614e23006c8d07c3b92 | [log] [tgz] |
---|---|---|
author | Aaron Zinman <aaron@azinman.com> | Wed Mar 30 12:52:18 2016 -0700 |
committer | Benjamin Prosnitz <bprosnitz@google.com> | Wed Apr 06 22:36:11 2016 +0000 |
tree | 593a6c43aa17dd3b517c2c071bc8d1f092b98372 | |
parent | 68a9949c074a3c12fe7cb76ca4a176da319fc0d6 [diff] |
VDL codegen for Swift. The codegen is largely complete. The following are missing: - Generating const values for type Any - vdl.Type support for VOM reflection/introspection - TypeObject support, which requires vdl.Type - Param support for Errors - RPC support, which requires VOM. - Proper integration with Xcode. Reach: - A post-process code re-formatter to make the generated code have the correct spacing, etc. Notes: - Currently v23 won't compile until we have support for migrating away from v23's types that use reserved words in Swift. This will come in another CL. - We don't support the fixed length VDL type explicitly -- instead that gets deferred to VOM. The reason is that Swift's type system cannot express a fixed length array, so we can only error at runtime. If we are to error at runtime, then we must either wrap arrays and monitor their length, or use getter/setters to monitor the length there, or enforce at VOM. The last option is currently preferrable as it allows for VDL generated code to be more idiomatic by directly using Arrays. This might change in the future. MultiPart: 4/4 Change-Id: Ic5348e8a92f6ce26ae68be0f47227e4c974a3020
This repository contains developer tools used to install and contribute to Vanadium.
For more information, see the installation and contributing instructions.
This repository is fetched and the tools are built as part of the Vanadium installation process for contributors.