** Return the string to be used as a prompt by the interpreter. Leave ** the string (or nil, if using the default value) on the stack, to keep ** it anchored. */
| 531 | ** it anchored. |
| 532 | */ |
| 533 | static const char *get_prompt (lua_State *L, int firstline) { |
| 534 | if (lua_getglobal(L, firstline ? "_PROMPT" : "_PROMPT2") == LUA_TNIL) |
| 535 | return (firstline ? LUA_PROMPT : LUA_PROMPT2); /* use the default */ |
| 536 | else { /* apply 'tostring' over the value */ |
| 537 | const char *p = luaL_tolstring(L, -1, NULL); |
| 538 | lua_remove(L, -2); /* remove original value */ |
| 539 | return p; |
| 540 | } |
| 541 | } |
| 542 | |
| 543 | /* mark in error messages for incomplete statements */ |
| 544 | #define EOFMARK "<eof>" |
no test coverage detected