| 10 | |
| 11 | template <typename Handler> |
| 12 | bool sol_lua_check(sol::types<number_shim>, lua_State* L, |
| 13 | int index, Handler&& handler, |
| 14 | sol::stack::record& tracking) { |
| 15 | // check_usertype is a backdoor for directly checking sol2 |
| 16 | // usertypes |
| 17 | if (!sol::stack::check_usertype<number_shim>(L, index) |
| 18 | && !sol::stack::check<double>(L, index)) { |
| 19 | handler(L, |
| 20 | index, |
| 21 | sol::type_of(L, index), |
| 22 | sol::type::userdata, |
| 23 | "expected a number_shim or a number"); |
| 24 | return false; |
| 25 | } |
| 26 | tracking.use(1); |
| 27 | return true; |
| 28 | } |
| 29 | |
| 30 | number_shim sol_lua_get(sol::types<number_shim>, lua_State* L, |
| 31 | int index, sol::stack::record& tracking) { |