Files
elixir-ffi/lib/ffi/library.ex
2015-09-20 21:16:39 -04:00

28 lines
535 B
Elixir

defmodule FFI.Library do
defmacro __using__(_x) do
quote do
import FFI.Library
end
end
defmacro ffi_lib(name) do
quote do
def ffi_lib,
do: unquote(name)
end
end
defmacro attach_function(name, arguments, return_type) do
quote do
def unquote(name)(params) do
definition = {ffi_lib,
unquote(name),
unquote(arguments),
unquote(return_type)}
FFI.call(definition, params)
end
end
end
end