philomena/native/philomena
2024-12-01 18:17:53 -05:00
..
src Use lazy for domain set 2024-12-01 18:17:53 -05:00
Cargo.lock Use lazy for domain set 2024-12-01 18:17:53 -05:00
Cargo.toml Use lazy for domain set 2024-12-01 18:17:53 -05:00
README.md Add some specs and documentation, format 2021-09-29 22:09:21 -04:00

NIF for Elixir.Philomena.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 Philomena.Native do
    use Rustler, otp_app: <otp-app>, crate: "philomena"

    # 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.