Lib
QOLを高める
Public Member Functions | Static Public Member Functions | List of all members
yappy::lua::export::sys Struct Reference

システム関連関数。sysグローバルテーブルに提供。 More...

#include <script_export.h>

Public Member Functions

 sys ()=delete
 

Static Public Member Functions

static int include (lua_State *L)
 別の Lua ソースファイルを実行する。 More...
 
static int readFile (lua_State *L)
 ファイルを読む。 More...
 
static int writeFile (lua_State *L)
 ファイルを書く。 More...
 

Detailed Description

システム関連関数。sysグローバルテーブルに提供。

sys = {};

Definition at line 46 of file script_export.h.

Constructor & Destructor Documentation

yappy::lua::export::sys::sys ( )
delete

Member Function Documentation

int yappy::lua::export::sys::include ( lua_State *  L)
static

別の Lua ソースファイルを実行する。

function sys.include(...)
end

Lua 標準関数 dofile() とおおよそ同じです。 (ロード系の標準関数は全て削除されています。) ファイルのロードはライブラリのローダを呼び出して行うようになっています。 デバッグ情報のロードも行うようになっています。

Parameters
[in]...ファイル名
Returns
なし
See also
yappy::file

Definition at line 203 of file script_export.cpp.

int yappy::lua::export::sys::readFile ( lua_State *  L)
static

ファイルを読む。

function sys.readFile(str fileName)
return ...;
end

テキストファイルを読みます。 ファイルが存在しない場合、何も返しません(0個の値を返します)。 ファイル内に1行も存在しなかった場合も同様です。 ファイルが存在しない以外の理由で失敗した場合、エラーを発生させます。 1行あたり読み取るのは1023文字までです。超過した分は捨てられます。

-- 最初の3行をそれぞれ a, b, c に代入する
-- 足りない部分には nil が代入される
-- 3行あったかどうかは c が nil かを見ればよい
local a, b, c = sys.readFile("savedata.txt");
-- リストに変換する (x[1]から始まる)
local x = { sys.readFile("savedata.txt") };
-- 長さ(行数)を得る
local len = #x;
-- 全て出力する
for i = 1, #x do
trace.write(x[i]);
end
Parameters
[in]fileNameファイル名
Returns
各行の内容

Definition at line 249 of file script_export.cpp.

int yappy::lua::export::sys::writeFile ( lua_State *  L)
static

ファイルを書く。

function sys.writeFile(str fileName, ...)
end

テキストファイルを書き込みます。 ファイルのオープンや書き込みに失敗した場合、エラーを発生させます。

-- 数値は文字列に自動で変換される
sys.writeFile("savedata.txt", "NoName", 1, 255);
local name, stage, hp = sys.readFile("savedata.txt");
-- リストを可変個の値に変換するには table.unpack() を使う
local list = { "NoName", 1, 255 };
sys.writeFile("savedata.txt", table.unpack(list));
Warning
文字列に含まれる改行をチェックしません。 readFile() との整合性が崩れるので注意してください。
Parameters
[in]fileNameファイル名
[in]...各行の内容
Returns
なし

Definition at line 317 of file script_export.cpp.


The documentation for this struct was generated from the following files: