/
niceSOFT
/
swig
Обзор
Документация
Войти
/
niceSOFT
/
swig
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Examples/test-suite/cpp17_nested_namespaces.i
81 строка
1 KB
Olly Betts
Run C++14 and C++17 tests with appropriate compiler
26 июл 2022, 06:28
26 июл 2022, 06:28
3140acd
Код
Авторство
О чём код?
%module cpp17_nested_namespaces // Tests c++17 style nested namespaces %inline %{ // Tests with namespaces already defined using C++98 style (non-nested) namespaces namespace A1 { struct A1Struct { void A1Method() {} }; namespace B1 { struct B1Struct { void B1Method() {} }; } } namespace A1::B1 { A1Struct createA1Struct() { return ::A1::A1Struct(); } B1Struct createB1Struct() { return ::A1::B1::B1Struct(); } } namespace A1 { namespace B1 { namespace C1 { struct C1Struct { void C1Method() {} }; } } } namespace A1::B1::C1 { C1Struct createC1Struct() { return ::A1::B1::C1::C1Struct(); } } %} %inline %{ // Tests with namespaces already defined using C++17 style (nested) namespaces namespace A2::B2 { struct B2Struct { void B2Method() {} }; } namespace A2::B2 { B2Struct createB2Struct() { return ::A2::B2::B2Struct(); } } namespace A2::B2::C2 { struct C2Struct { void C2Method() {} }; } namespace A2::B2::C2 { C2Struct createC2Struct() { return ::A2::B2::C2::C2Struct(); } } %} %inline %{ // Tests with namespaces already defined using C++17 style (nested) namespaces to 3 levels namespace A3::B3::C3 { struct C3Struct { void C3Method() {} }; } namespace A3::B3::C3 { C3Struct createC3Struct() { return ::A3::B3::C3::C3Struct(); } } namespace A3::B3 { struct B3Struct { void B3Method() {} }; } namespace A3::B3 { B3Struct createB3Struct() { return ::A3::B3::B3Struct(); } } %}