| 1135 | |
| 1136 | template <typename T> |
| 1137 | auto unqualified_get(lua_State* L, int index, record& tracking) -> decltype(stack_detail::unchecked_unqualified_get<T>(L, index, tracking)) { |
| 1138 | #if SOL_IS_ON(SOL_SAFE_GETTER) |
| 1139 | static constexpr bool is_op = meta::is_optional_v<T>; |
| 1140 | if constexpr (is_op) { |
| 1141 | return stack_detail::unchecked_unqualified_get<T>(L, index, tracking); |
| 1142 | } |
| 1143 | else { |
| 1144 | if (is_lua_reference<T>::value) { |
| 1145 | return stack_detail::unchecked_unqualified_get<T>(L, index, tracking); |
| 1146 | } |
| 1147 | auto op = unqualified_check_get<T>(L, index, type_panic_c_str, tracking); |
| 1148 | return *std::move(op); |
| 1149 | } |
| 1150 | #else |
| 1151 | return stack_detail::unchecked_unqualified_get<T>(L, index, tracking); |
| 1152 | #endif |
| 1153 | } |
| 1154 | |
| 1155 | template <typename T> |
| 1156 | decltype(auto) unqualified_get(lua_State* L, int index = -lua_size<meta::unqualified_t<T>>::value) { |
nothing calls this directly
no outgoing calls
no test coverage detected