達人出版会BOOTH支店達人出版会BOOTH支店

『入門mruby Cからmruby APIを使いこなす』(Yamanekko 著)

 今日からmrubyを使いこなしましょう!  マイコンで動かしたり、アプリケーションに組み込んで使えるRuby処理系として期待を集めるmruby。このmrubyを本格的に使いこなすにあたっては、Cも使ったライブラリパッケージmrbgemを自分で作るところが壁になりがちです。  本書はそのような、Cとか良く分からないけどmrubyを使ってみたい!という方のためのmruby入門本です。抜粋ではなく完全なソースコードを多数掲載。ブラウザとGitHubアカウントがあれば無料でビルドが試せるGitpodにも対応しているので、本書があればすぐにmrubyを使ったライブラリ・アプリケーション開発に取り組めます。 ■目次 はじめに mrubyとは 本書の特徴 対象読者について 謝辞 第1章 mrubyをビルドする 1.1 開発環境の準備 1.2 ビルドする 第2章 Hello, World! 2.1 Hello Worldを試す 2.2 ソースの解説 第3章 mrubyのオブジェクト(mrb_value 構造体) 3.1 mrubyでのCとRubyとの関係 第4章 mrubyの数値 4.1 Cの数値をmrubyの数値に変換する 4.2 数値の演算 4.3 mrubyの数値をCの数値に変換する 4.4 FloatとFixnumの変換 4.5 数値を文字列にする 第5章 文字列とシンボル 5.1 Cの文字列からmrubyのStringオブジェクトへ変換する 5.2 mrubyのStringオブジェクトからCの文字列へ変換する 5.3 Cの文字列からmrubyのSymbolを作る 5.4 mrubyのSymbolをCの文字列から作る 第6章 オブジェクトの実装(RVALUE構造体) 6.1 mrb_valueとRVALUE構造体 6.2 構造体が使われるか否かを調べるメソッド 第7章 配列(Array) 7.1 Arrayを作る 7.2 Arrayの初期値を与える 7.3 CからArrayにアクセスする 第8章 Hash 8.1 Hashを作る 8.2 Hashの値を参照する 第9章 CからRubyのコードを呼び出す 9.1 Rubyのメソッド呼び出し 9.2 Rubyコードの実行 第10章 クラスとモジュール 10.1 クラスとモジュールを定義する 10.2 ネストしたクラスやモジュール 10.3 モジュールのインクルード 10.4 クラス定義とmrbgems 第11章 メソッドを定義する 11.1 クラスメソッドを定義する 11.2 インスタンスメソッドを定義する 11.3 ブロック 第12章 オブジェクトを扱う 12.1 インスタンスを作る 12.2 値をチェックをする 12.3 オブジェクトをコピーする 12.4 オブジェクトからクラスの名前や実体を得る 12.5 任意のオブジェクトをStringに変換する 12.6 オブジェクト同士を比較する 12.7 RVALUEとmrb_valueを相互変換する 第13章 定数と変数 13.1 定数を扱う 13.2 インスタンス変数を扱う 13.3 ローカル変数について 13.4 グローバル変数とクラス変数を扱う 第14章 例外を扱う 14.1 例外の発生を確認する 14.2 例外を発生させる 14.3 例外に対処する 第15章 メモリ管理とGC 15.1 mrubyにおけるメモリ管理とGC 15.2 汎用的なメモリ管理API 15.3 RVALUE構造体のメモリ管理 15.4 GCを実行する・GCを止める 15.5 GC arenaについて 第16章 mrbgemsとビルドシステム 16.1 mrbgemsとは 16.2 mrbgemsの構成 16.3 mrbgemsのビルド 第17章 mrbgemを作る 17.1 ファイル構成 17.2 mrbgem.rakeを書く 17.3 hello.cファイルを作成する 17.4 初期化の中身を作成する 17.5 ビルドする 第18章 RubyとCの間でデータのやりとりをする 18.1 インスタンス変数としてデータを管理する 18.2 RDataを使ってデータを管理する 参考文献 おわりに

 今日からmrubyを使いこなしましょう!  マイコンで動かしたり、アプリケーションに組み込んで使えるRuby処理系として期待を集めるmruby。このmrubyを本格的に使いこなすにあたっては、Cも使ったライブラリパッケージmrbgemを自分で作るところが壁になりがちです。  本書はそのような、Cとか良く分からないけどmrubyを使ってみたい!という方のためのmruby入門本です。抜粋ではなく完全なソースコードを多数掲載。ブラウザとGitHubアカウントがあれば無料でビルドが試せるGitpodにも対応しているので、本書があればすぐにmrubyを使ったライブラリ・アプリケーション開発に取り組めます。 ■目次 はじめに mrubyとは 本書の特徴 対象読者について 謝辞 第1章 mrubyをビルドする 1.1 開発環境の準備 1.2 ビルドする 第2章 Hello, World! 2.1 Hello Worldを試す 2.2 ソースの解説 第3章 mrubyのオブジェクト(mrb_value 構造体) 3.1 mrubyでのCとRubyとの関係 第4章 mrubyの数値 4.1 Cの数値をmrubyの数値に変換する 4.2 数値の演算 4.3 mrubyの数値をCの数値に変換する 4.4 FloatとFixnumの変換 4.5 数値を文字列にする 第5章 文字列とシンボル 5.1 Cの文字列からmrubyのStringオブジェクトへ変換する 5.2 mrubyのStringオブジェクトからCの文字列へ変換する 5.3 Cの文字列からmrubyのSymbolを作る 5.4 mrubyのSymbolをCの文字列から作る 第6章 オブジェクトの実装(RVALUE構造体) 6.1 mrb_valueとRVALUE構造体 6.2 構造体が使われるか否かを調べるメソッド 第7章 配列(Array) 7.1 Arrayを作る 7.2 Arrayの初期値を与える 7.3 CからArrayにアクセスする 第8章 Hash 8.1 Hashを作る 8.2 Hashの値を参照する 第9章 CからRubyのコードを呼び出す 9.1 Rubyのメソッド呼び出し 9.2 Rubyコードの実行 第10章 クラスとモジュール 10.1 クラスとモジュールを定義する 10.2 ネストしたクラスやモジュール 10.3 モジュールのインクルード 10.4 クラス定義とmrbgems 第11章 メソッドを定義する 11.1 クラスメソッドを定義する 11.2 インスタンスメソッドを定義する 11.3 ブロック 第12章 オブジェクトを扱う 12.1 インスタンスを作る 12.2 値をチェックをする 12.3 オブジェクトをコピーする 12.4 オブジェクトからクラスの名前や実体を得る 12.5 任意のオブジェクトをStringに変換する 12.6 オブジェクト同士を比較する 12.7 RVALUEとmrb_valueを相互変換する 第13章 定数と変数 13.1 定数を扱う 13.2 インスタンス変数を扱う 13.3 ローカル変数について 13.4 グローバル変数とクラス変数を扱う 第14章 例外を扱う 14.1 例外の発生を確認する 14.2 例外を発生させる 14.3 例外に対処する 第15章 メモリ管理とGC 15.1 mrubyにおけるメモリ管理とGC 15.2 汎用的なメモリ管理API 15.3 RVALUE構造体のメモリ管理 15.4 GCを実行する・GCを止める 15.5 GC arenaについて 第16章 mrbgemsとビルドシステム 16.1 mrbgemsとは 16.2 mrbgemsの構成 16.3 mrbgemsのビルド 第17章 mrbgemを作る 17.1 ファイル構成 17.2 mrbgem.rakeを書く 17.3 hello.cファイルを作成する 17.4 初期化の中身を作成する 17.5 ビルドする 第18章 RubyとCの間でデータのやりとりをする 18.1 インスタンス変数としてデータを管理する 18.2 RDataを使ってデータを管理する 参考文献 おわりに