A Pure Elixir Thrift Implementation
Go to file
2016-01-18 18:20:55 -08:00
ext Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
lib Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
test Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
.gitignore Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
.gitmodules Initial revision. 2015-01-06 17:51:59 -08:00
.travis.yml Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
LICENSE Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
mix.exs A little mix.exs reorganization and cleanup. 2016-01-18 18:20:55 -08:00
mix.lock Minor noncritical enhancement 2016-01-11 18:06:55 -08:00
README.md Minor noncritical enhancement 2016-01-11 18:06:55 -08:00

Thrift Utilities for Elixir

Version Build Status Coverage Status Issues License

This package contains a handful of useful utilities for working with Thrift in Elixir.

In particular, it includes a copy of the Erlang Thrift runtime library.

Setup

Start by adding this package to your project as a dependency:

{:thrift, github: "pinterest/elixir-thrift", submodules: true}

Mix

This package includes a Mix compiler task that can be used to automate Thrift code generation. Start by adding :thrift to your project's :compilers list. For example:

compilers: [:thrift | Mix.compilers]

It's important to add :thrift before the :erlang entry. The Thrift compiler will generate Erlang source files, and we currently rely on this ordering to ensure those generated source files get compiled.

Next, define the list of :thrift_files that should be compiled. In this example, we gather all of the .thrift files under the thrift directory:

thrift_files: Mix.Utils.extract_files(["thrift"], [:thrift]),

By default, the generated source files will be written to the src directory, but you can change that using the thrift_output option.

You can also pass additional options to the Thrift compiler by listing them in the thrift_options option.