** 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. */
| 441 | ** it anchored. |
| 442 | */ |
| 443 | static const char *get_prompt (lua_State *L, int firstline) { |
| 444 | if (lua_getglobal(L, firstline ? "_PROMPT" : "_PROMPT2") == LUA_TNIL) |
| 445 | return (firstline ? LUA_PROMPT : LUA_PROMPT2); /* use the default */ |
| 446 | else { /* apply 'tostring' over the value */ |
| 447 | const char *p = luaL_tolstring(L, -1, NULL); |
| 448 | lua_remove(L, -2); /* remove original value */ |
| 449 | return p; |
| 450 | } |
| 451 | } |
| 452 | |
| 453 | /* mark in error messages for incomplete statements */ |
| 454 | #define EOFMARK "<eof>" |
no test coverage detected