Rustのunsafeコード:unsafe関数、トレイト、外部関数インターフェース(FFI)

本稿では、unsafeコード、特にunsafe関数とunsafeトレイト、そして外部関数インターフェース(FFI)について解説する。まずunsafeブロックの基本を確認し、その後具体例を通じて理解を深める。 unsafeブロックの基本 unsafeブロックは以下のように記述する: unsafe { // 安全でない操作 } 関数内や式の中でunsafeブロックを使用できる。例: println!("r1: {}, r2: { ...

8月6日 16:25 投稿

LuaJIT 拡張機能と FFI ライブラリの詳細解説

LuaJIT の互換性と拡張概要 LuaJIT は Lua 5.1 に対して完全な上位互換性を提供します。標準 Lua ライブラリ関数および Lua/C API 関数のすべてを利用可能です。さらに、リンカーおよび動的ローダーレベルにおいて Lua 5.1 と ABI 互換性があるため、標準 Lua 用ヘッダファイルでコンパイルした C モジュールを、Lua または LuaJIT どちらからも同じ共有ライブラリとしてロ ...

6月30日 22:34 投稿

LuaJITのFFI拡張機能実践ガイド

LuaJITのFFI(Foreign Function Interface)は、LuaコードからC言語ライブラリを直接呼び出すための強力な仕組みです。この機能を活用することで、高パフォーマンスな外部ライブラリとシームレスに連携することが可能です。以下では、FFIの高度な利用法と実際のバインディング例を解説します。 主要なFFIバインディングカテゴリ システム基盤:ljsyscall(Linuxシステ ...

6月1日 09:26 投稿