Skip to content

luaL_where

現在の呼び出しスタックのレベルでの位置を示す文字列をスタックにプッシュします。

[-0, +1, m]

c
void luaL_where (lua_State *L, int lvl);

説明

呼び出しスタックのレベルlvlでの制御の現在位置を識別する文字列をスタックにプッシュします。通常、この文字列は以下のフォーマットを持っています:

chunkname:currentline:

レベル0は実行中の関数であり、レベル1は実行中の関数を呼び出した関数です。

この関数はエラーメッセージのプレフィックスを作成するために使用されます。

サンプルコード

c
luaL_where(L, 1);
printf("位置情報: %s\n", lua_tostring(L, -1));
lua_pop(L, 1);

このコードは、スタックレベル1での位置を取得し、表示します。

互換性

  • Lua5.1

関連項目

  • luaL_typerror
  • luaL_traceback