Levana使用マニュアル

この文書はLevanaでコーディングをする為のガイド兼API仕様書となっています。

※　この文章は未完全です。現在Levanaプロジェクトそのものが未完成であり、
　　リリースバージョン名が０代(levana-0.x.x)である間は仕様もすぐに変わる可能性が高いです。
　　Luaの文法をご存知の方は、lev/all.luaファイルをご覧になれば、現状の仕様が大体掴めるかと思います。
　　また、なるべくLuaの文法を利用して、なるべく短いコーディングになるよう心がけていますが、
　　テーブル名・ファイル名・関数名・引数仕様などは現状、独断で決定していますので、
　　もし仕様に関するご要望などありましたら、
　　公式のリクエストページ　http://levana.sourceforge.jp/?Request　までお問合わせ下さい。


【LevanaとLevについて】

LevanaとはLua言語の文法を完全に引き継いだインタプリタであり、
同時にLuaに追加機能の関数を提供するAPIライブラリの名称です。
Levanaの機能を利用する為には、Luaコードファイル（entry.txtなど）の冒頭に、

require 'levana'

と記述して下さい。
levana実行ファイルからの起動の場合は実行ファイル本体から、
luaの公式インタプリタからの起動の場合は、
動的リンクライブラリ（DLLファイルあるいはSOファイル）から自動的に機能がロードされます。

ただし、LevanaライブラリはC++言語からの橋渡しという実装上の都合上、プリミティブな部分が多少あり、
関数の引数を省略できなかったりと、Luaらしくない文法で記述量も多くなりがちです。
代わりに以下に紹介する、Levライブラリの使用をオススメします。
（Levanaライブラリ本体のAPI説明はここでは割愛させて頂きます）

Levライブラリは、Levanaの再ラッピング定義のコード群です。現状はたった1つのファイルで構成されています。
Levライブラリは、そのままでは若干使いにくいLevana関数群を、
Luaらしい記述法で、コード記述量を大幅に広げ、お手軽スクリプトから本格プログラムまでの作成を支援します。
Levライブラリの機能を利用する為には、Luaコードファイル（entry.txtなど）の冒頭に、

require 'lev/all'

と記述して下さい。（lev/all.luaファイルが存在していると仮定）
このライブラリ自体がLevanaの機能を自動ロードして使っている為、

（間違った例）
require 'levana'
require 'lev/all'

とする必要はありません。
以下にLevライブラリの機能を紹介します。


【Levの機能紹介】

※　書きかけ
ちょっと仕様がコロコロ変わるので、開発がある程度進んでから書きなおそうと思います。

