https://github.com/palantir/conjure-rust
Conjure support for Rust
https://github.com/palantir/conjure-rust
octo-correct-managed
Last synced: 2 months ago
JSON representation
Conjure support for Rust
- Host: GitHub
- URL: https://github.com/palantir/conjure-rust
- Owner: palantir
- License: apache-2.0
- Created: 2019-01-08T13:46:45.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-04-10T16:24:28.000Z (about 1 year ago)
- Last Synced: 2024-04-14T09:05:04.766Z (about 1 year ago)
- Topics: octo-correct-managed
- Language: Rust
- Homepage:
- Size: 1.92 MB
- Stars: 18
- Watchers: 232
- Forks: 11
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Changelog: changelog/0.4.1/pr-65.v2.yml
- License: LICENSE
Awesome Lists containing this project
README
# Conjure-Rust
[](https://circleci.com/gh/palantir/conjure-rust) [](https://bintray.com/palantir/releases/conjure-rust/_latestVersion) [](https://opensource.org/licenses/Apache-2.0)
_[Conjure](https://github.com/palantir/conjure) support for Rust._
## conjure-rust
`conjure-rust` is an [RFC 002](
https://github.com/palantir/conjure/blob/master/docs/rfc/002-contract-for-conjure-generators.md)-compliant CLI, which can
be used via a build tool like [gradle-conjure](https://github.com/palantir/gradle-conjure), or manually:```
Generate Rust code from a conjure IR fileUsage: conjure-rust generate [OPTIONS]
Arguments:
Path to a JSON-formatted Conjure IR file
Directory to place generated codeOptions:
--exhaustive[=]
Generate exhaustively matchable enums and unions [default: false] [possible values: true, false]
--serializeEmptyCollections[=]
Include empty collection fields in serialized output [default: false] [possible values: true, false]
--stripPrefix
Strip a prefix from types's package paths
--productName
The name of the product
--productVersion
The version of the product
--crateVersion
The version of the generated crate. Defaults to `--productVersion`
-h, --help
Print help
```## conjure-codegen
[Documentation](https://docs.rs/conjure-codegen)
`conjure-codegen` is the library which turns a Conjure IR file into Rust code. It powers the `conjure-rust` CLI, but
can also be used on its own in e.g. build scripts as an alternative approach. See its documentation for more details, as
well as examples of generated code.## conjure-error
[Documentation](https://docs.rs/conjure-error)
`conjure-error` is the runtime support library that the errors generated by `conjure-codegen` depend on. It defines
various standard error types and functionality to serialize and deserialize errors.## conjure-http
[Documentation](https://docs.rs/conjure-http)
`conjure-http` is the runtime support library that the service clients and resources generated by `conjure-codegen`
depend on. It defines interfaces used by the underlying client and server implementations.## conjure-object
[Documentation](https://docs.rs/conjure-object)
`conjure-object` is the runtime support library that the objects generated by `conjure-codegen` depend on. It reexports
the various third party types that correspond to Conjure primitives.## conjure-serde
[Documentation](https://docs.rs/conjure-serde)
`conjure-serde` provides wrapper types for serde `Serializer`s and `Deserializer`s which adjust behavior to match
Conjure's expectations around binary data, non-finite floating point values, and unknown fields.