Files
poco/modules/Poco/Dynamic.cppm
Miko 041e7feeb7 Add support for modules (#4999)
* Add support for modules

* Use "" for inclusion

* Fix missing includes on Poco.Data module

* Add PDF and SevenZip modules, and match modules to build macros

* Add CI test

* Add missing link libraries in CMake

* Add remaining libraries DNSSD, CppParser and CppUnit. Changed some static declarations to inline to export

* We also need to forward the ENABLE_NETSSL_* macros

* Update CMakeLists files

* Add samples as requested, with DateTime and URI test for example

* Fix POCO_MODULES_INSTALL macro

* chore(CMake): Combine install macro for libraries and C++ modules into one macro.

* Apply testsuite changes and address include directories concerns

* Restore accidentally deleted build files

* Mistakenly added a file generated by CMake, removed.

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
2025-09-19 19:46:36 +02:00

65 lines
1.6 KiB
C++

//
// Dynamic.cppm
//
// C++ module file
//
// Copyright (c) 2025, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier: BSL-1.0
//
module;
#ifdef ENABLE_FOUNDATION
#include "Poco/Dynamic/Pair.h"
#include "Poco/Dynamic/Struct.h"
#include "Poco/Dynamic/Var.h"
#include "Poco/Dynamic/VarHolder.h"
#include "Poco/Dynamic/VarIterator.h"
#include "Poco/Dynamic/VarVisitor.h"
#endif
export module Poco.Dynamic;
export namespace Poco::Dynamic {
#ifdef ENABLE_FOUNDATION
using Poco::Dynamic::Pair;
using Poco::Dynamic::Struct;
using Poco::Dynamic::Var;
using Poco::Dynamic::VarHolder;
using Poco::Dynamic::VarHolderImpl;
using Poco::Dynamic::VarIterator;
using Poco::Dynamic::Visitor;
using Poco::Dynamic::Array;
using Poco::Dynamic::Deque;
using Poco::Dynamic::List;
using Poco::Dynamic::Vector;
using Poco::Dynamic::operator!=;
using Poco::Dynamic::operator*;
using Poco::Dynamic::operator*=;
using Poco::Dynamic::operator+;
using Poco::Dynamic::operator+=;
using Poco::Dynamic::operator-;
using Poco::Dynamic::operator-=;
using Poco::Dynamic::operator/;
using Poco::Dynamic::operator/=;
using Poco::Dynamic::operator<;
using Poco::Dynamic::operator<=;
using Poco::Dynamic::operator==;
using Poco::Dynamic::operator>;
using Poco::Dynamic::operator>=;
using Poco::Dynamic::structToString;
namespace Impl {
using Poco::Dynamic::Impl::appendJSONKey;
using Poco::Dynamic::Impl::appendJSONString;
using Poco::Dynamic::Impl::appendJSONValue;
using Poco::Dynamic::Impl::containerToJSON;
using Poco::Dynamic::Impl::isJSONString;
}
#endif
}