/
niceSOFT
/
swig
Обзор
Документация
Войти
/
niceSOFT
/
swig
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Examples/test-suite/lua/cpp17_string_view_runme.lua
56 строк
2 KB
William S Fulton
Lua review follow-ups
30 май 2026, 19:24
30 май 2026, 19:24
afa1240
Код
Авторство
О чём код?
require_to_globs("cpp17_string_view") catch_undef_globs() -- catch "undefined" global variables -- Checking expected use of %typemap(in) std::string_view {} test_value("Fee") -- Checking expected result of %typemap(out) std::string_view {} s=test_value("Fi") assert(type(s)=="string" and s =="Fi") -- Checking expected use of %typemap(in) const std::string_view & {} test_const_reference("Fo") -- Checking expected result of %typemap(out) const std::string_view& {} s=test_const_reference("Fum") assert(type(s)=="string" and s =="Fum") -- Input and output typemaps for pointers and non-const references to -- std::string_view are *not* supported; the following tests confirm -- that none of these cases are slipping through. stringPtr = test_pointer_out() test_pointer(stringPtr) stringPtr = test_const_pointer_out() test_const_pointer(stringPtr) stringPtr = test_reference_out() test_reference(stringPtr) -- Global variables assert(cpp17_string_view.ConstGlobalString=="const global string") -- Member variables myStructure = Structure() assert(myStructure.ConstMemberString=="const member string") assert(Structure.ConstStaticMemberString=="const static member string") test_const_reference_returning_void("foo") assert(stdstringview_empty()=="") assert(c_empty()=="") assert(c_null()==nil) assert(get_null(c_null())==nil) assert(get_null(c_empty())=="non-null") assert(get_null(stdstringview_empty())=="non-null") -- Regression test for bug in initial implementation, spotted before release: -- depending on the order of evaluation of function arguments by the compiler, -- a numeric value might be passed as an empty string (seen with GCC 12.2 on -- x86-64 Linux). assert(test_value(1234) == "1234")