pasta_lua 0.2.4

Pasta Lua - Lua integration for Pasta DSL
Documentation
--- @module pasta.global
--- グローバル関数モジュール
---
--- ユーザー定義のグローバル関数を格納するテーブル。
--- main.lua等から関数を追加することで、単語参照時にL5で検索される。
---
--- 使用例(ユーザーがmain.lua等で定義):
---   local GLOBAL = require("pasta.global")
---   function GLOBAL.時報(act)
---       return "正午です"
---   end

--- @class Global グローバル関数テーブル
--- @field [string] fun(act: Act, ...): any
local GLOBAL = {}

--- yield(継続トーク)関数
--- チェイントーク と同一動作。
--- Pasta DSL の `>yield` で呼び出される。
--- @param act Act ACT オブジェクト
function GLOBAL.yield(act)
    act:yield()
end

-- ブラケット記法を使用: 非 ASCII 識別子(GLOBAL.チェイントーク)は LuaJIT 拡張のため、
-- 標準 Lua パーサー(luacheck 等の静的解析)が解釈できる等価表記で定義する。
GLOBAL["チェイントーク"] = GLOBAL.yield

return GLOBAL