require("import")
import("cpp17_string_view")
for k,v in pairs(cpp17_string_view) do _G[k]=v end
local env = _ENV
if not env then env = getfenv () end
setmetatable(env, {__index=function (t,i) error("undefined global variable `"..i.."'",2) end})
test_value("Fee")
s=test_value("Fi")
assert(type(s)=="string" and s =="Fi")
test_const_reference("Fo")
s=test_const_reference("Fum")
assert(type(s)=="string" and s =="Fum")
stringPtr = test_pointer_out()
test_pointer(stringPtr)
stringPtr = test_const_pointer_out()
test_const_pointer(stringPtr)
stringPtr = test_reference_out()
test_reference(stringPtr)
assert(cpp17_string_view.ConstGlobalString=="const global string")
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")
assert(test_value(1234) == "1234")