xler/native/xler_native/README.md
2019-04-11 23:39:59 +02:00

827 B

Nif for Elixir.Xler.Native

To build the NIF module:

  • Make sure your projects mix.exs has the :rustler compiler listed in the project function: compilers: [:rustler] ++ Mix.compilers() If there already is a :compilers list, you should append :rustler to it.
  • Add your crate to the rustler_crates attribute in the `project function. See here.
  • Your NIF will now build along with your project.

To load the NIF:

defmodule Xler.Native do
    use Rustler, otp_app: <otp-app>, crate: "xler_native"

    # When your NIF is loaded, it will override this function.
    def add(_a, _b), do: :erlang.nif_error(:nif_not_loaded)
end

Examples

This is a complete example of a NIF written in Rust.