5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Elixir-NIF-Rustボイラープレート Ruster0.17.1の注意点

Last updated at Posted at 2018-06-29

はじめに

Fukuoka.exアドバイザーズ twinbeeことenpedasiと申します。

RustlerはElixirからNIFを通じてRustとの連携を簡単に図れるボイラープレートです。6/22に大き目のアップデートがありました。私が書いてきた記事も影響を受ける内容ですので、記事にしておきます。

型の変更

主要な型で、Nifプリフィックスがなくなりました。

  • Rename NifEncoder/NifDecoder to Encoder/Decoder
  • Rename NifTerm to Term
  • Rename NifEnv to Env
  • Rename NifError to Error
  • Rename NifAtom to Atom
  • Rename NifBinary to Binary
  • Rename NifPid to Pid
  • Rename NifListIterator to ListIterator
  • Rename NifMapIterator to MapIterator

私の過去記事は、Rustler0.16対応なので全てNifプリフィックスが付いております。今からRustlerをv0.17.1で学習される方はご注意下さい。
|> Elixirから簡単にRustを呼び出せるRustler #1 準備編
|> Elixirから簡単にRustを呼び出せるRustler #2 クレートを使ってみる
|> Elixirから簡単にRustを呼び出せるRustler #3 いろいろな型を呼び出す
|> Elixirから簡単にRustを呼び出せるRustler #4 SHIFT-JIS変換を行う
|> Elixirから簡単にRustを呼び出せるRustler #5 NIFからメッセージを返す

OTP21への対応

Erlang OTP21で動作するようになっています。

おわりに

v0.16時代に、テストコードにはNifプリフィックスがなく、どこで辻褄を合わせているのか不思議でしたが、バージョンアップで型の一括変更を行う布石でした。納得はしましたが、早く知っておきたかったです。:upside_down:

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?