aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h
diff options
context:
space:
mode:
authororivej <orivej@yandex-team.ru>2022-02-10 16:44:49 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:44:49 +0300
commit718c552901d703c502ccbefdfc3c9028d608b947 (patch)
tree46534a98bbefcd7b1f3faa5b52c138ab27db75b7 /contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h
parente9656aae26e0358d5378e5b63dcac5c8dbe0e4d0 (diff)
downloadydb-718c552901d703c502ccbefdfc3c9028d608b947.tar.gz
Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h')
-rw-r--r--contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h288
1 files changed, 144 insertions, 144 deletions
diff --git a/contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h b/contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h
index 52292c741e..ebbac54883 100644
--- a/contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h
+++ b/contrib/libs/poco/Foundation/include/Poco/SharedLibrary.h
@@ -1,144 +1,144 @@
-//
-// SharedLibrary.h
-//
-// Library: Foundation
-// Package: SharedLibrary
-// Module: SharedLibrary
-//
-// Definition of the SharedLibrary class.
-//
-// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// SPDX-License-Identifier: BSL-1.0
-//
-
-
-#ifndef Foundation_SharedLibrary_INCLUDED
-#define Foundation_SharedLibrary_INCLUDED
-
-
-#include "Poco/Foundation.h"
-
-
-#if defined(hpux) || defined(_hpux)
-#include "Poco/SharedLibrary_HPUX.h"
-#elif defined(POCO_VXWORKS)
-#include "Poco/SharedLibrary_VX.h"
-#elif defined(POCO_OS_FAMILY_UNIX)
-#include "Poco/SharedLibrary_UNIX.h"
-#elif defined(POCO_OS_FAMILY_WINDOWS) && defined(POCO_WIN32_UTF8)
-#include "Poco/SharedLibrary_WIN32U.h"
-#elif defined(POCO_OS_FAMILY_WINDOWS)
-#include "Poco/SharedLibrary_WIN32.h"
-#endif
-
-
-namespace Poco {
-
-
-class Foundation_API SharedLibrary: private SharedLibraryImpl
- /// The SharedLibrary class dynamically
- /// loads shared libraries at run-time.
-{
-public:
- enum Flags
- {
- SHLIB_GLOBAL = 1,
- /// On platforms that use dlopen(), use RTLD_GLOBAL. This is the default
- /// if no flags are given.
- ///
- /// This flag is ignored on platforms that do not use dlopen().
-
- SHLIB_LOCAL = 2
- /// On platforms that use dlopen(), use RTLD_LOCAL instead of RTLD_GLOBAL.
- ///
- /// Note that if this flag is specified, RTTI (including dynamic_cast and throw) will
- /// not work for types defined in the shared library with GCC and possibly other
- /// compilers as well. See http://gcc.gnu.org/faq.html#dso for more information.
- ///
- /// This flag is ignored on platforms that do not use dlopen().
- };
-
- SharedLibrary();
- /// Creates a SharedLibrary object.
-
- SharedLibrary(const std::string& path);
- /// Creates a SharedLibrary object and loads a library
- /// from the given path.
-
- SharedLibrary(const std::string& path, int flags);
- /// Creates a SharedLibrary object and loads a library
- /// from the given path, using the given flags.
- /// See the Flags enumeration for valid values.
-
- virtual ~SharedLibrary();
- /// Destroys the SharedLibrary. The actual library
- /// remains loaded.
-
- void load(const std::string& path);
- /// Loads a shared library from the given path.
- /// Throws a LibraryAlreadyLoadedException if
- /// a library has already been loaded.
- /// Throws a LibraryLoadException if the library
- /// cannot be loaded.
-
- void load(const std::string& path, int flags);
- /// Loads a shared library from the given path,
- /// using the given flags. See the Flags enumeration
- /// for valid values.
- /// Throws a LibraryAlreadyLoadedException if
- /// a library has already been loaded.
- /// Throws a LibraryLoadException if the library
- /// cannot be loaded.
-
- void unload();
- /// Unloads a shared library.
-
- bool isLoaded() const;
- /// Returns true iff a library has been loaded.
-
- bool hasSymbol(const std::string& name);
- /// Returns true iff the loaded library contains
- /// a symbol with the given name.
-
- void* getSymbol(const std::string& name);
- /// Returns the address of the symbol with
- /// the given name. For functions, this
- /// is the entry point of the function.
- /// Throws a NotFoundException if the symbol
- /// does not exist.
-
- const std::string& getPath() const;
- /// Returns the path of the library, as
- /// specified in a call to load() or the
- /// constructor.
-
- static std::string suffix();
- /// Returns the platform-specific filename suffix
- /// for shared libraries (including the period).
- /// In debug mode, the suffix also includes a
- /// "d" to specify the debug version of a library
- /// (e.g., "d.so", "d.dll") unless the library has
- /// been compiled with -DPOCO_NO_SHARED_LIBRARY_DEBUG_SUFFIX.
-
- static bool setSearchPath(const std::string& path);
- /// Adds the given path to the list of paths shared libraries
- /// are searched in.
- ///
- /// Returns true if the path was set, otherwise false.
- ///
- /// Currently only supported on Windows, where it calls
- /// SetDllDirectory(). On all other platforms, does not
- /// do anything and returns false.
-
-private:
- SharedLibrary(const SharedLibrary&);
- SharedLibrary& operator = (const SharedLibrary&);
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_SharedLibrary_INCLUDED
+//
+// SharedLibrary.h
+//
+// Library: Foundation
+// Package: SharedLibrary
+// Module: SharedLibrary
+//
+// Definition of the SharedLibrary class.
+//
+// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
+// and Contributors.
+//
+// SPDX-License-Identifier: BSL-1.0
+//
+
+
+#ifndef Foundation_SharedLibrary_INCLUDED
+#define Foundation_SharedLibrary_INCLUDED
+
+
+#include "Poco/Foundation.h"
+
+
+#if defined(hpux) || defined(_hpux)
+#include "Poco/SharedLibrary_HPUX.h"
+#elif defined(POCO_VXWORKS)
+#include "Poco/SharedLibrary_VX.h"
+#elif defined(POCO_OS_FAMILY_UNIX)
+#include "Poco/SharedLibrary_UNIX.h"
+#elif defined(POCO_OS_FAMILY_WINDOWS) && defined(POCO_WIN32_UTF8)
+#include "Poco/SharedLibrary_WIN32U.h"
+#elif defined(POCO_OS_FAMILY_WINDOWS)
+#include "Poco/SharedLibrary_WIN32.h"
+#endif
+
+
+namespace Poco {
+
+
+class Foundation_API SharedLibrary: private SharedLibraryImpl
+ /// The SharedLibrary class dynamically
+ /// loads shared libraries at run-time.
+{
+public:
+ enum Flags
+ {
+ SHLIB_GLOBAL = 1,
+ /// On platforms that use dlopen(), use RTLD_GLOBAL. This is the default
+ /// if no flags are given.
+ ///
+ /// This flag is ignored on platforms that do not use dlopen().
+
+ SHLIB_LOCAL = 2
+ /// On platforms that use dlopen(), use RTLD_LOCAL instead of RTLD_GLOBAL.
+ ///
+ /// Note that if this flag is specified, RTTI (including dynamic_cast and throw) will
+ /// not work for types defined in the shared library with GCC and possibly other
+ /// compilers as well. See http://gcc.gnu.org/faq.html#dso for more information.
+ ///
+ /// This flag is ignored on platforms that do not use dlopen().
+ };
+
+ SharedLibrary();
+ /// Creates a SharedLibrary object.
+
+ SharedLibrary(const std::string& path);
+ /// Creates a SharedLibrary object and loads a library
+ /// from the given path.
+
+ SharedLibrary(const std::string& path, int flags);
+ /// Creates a SharedLibrary object and loads a library
+ /// from the given path, using the given flags.
+ /// See the Flags enumeration for valid values.
+
+ virtual ~SharedLibrary();
+ /// Destroys the SharedLibrary. The actual library
+ /// remains loaded.
+
+ void load(const std::string& path);
+ /// Loads a shared library from the given path.
+ /// Throws a LibraryAlreadyLoadedException if
+ /// a library has already been loaded.
+ /// Throws a LibraryLoadException if the library
+ /// cannot be loaded.
+
+ void load(const std::string& path, int flags);
+ /// Loads a shared library from the given path,
+ /// using the given flags. See the Flags enumeration
+ /// for valid values.
+ /// Throws a LibraryAlreadyLoadedException if
+ /// a library has already been loaded.
+ /// Throws a LibraryLoadException if the library
+ /// cannot be loaded.
+
+ void unload();
+ /// Unloads a shared library.
+
+ bool isLoaded() const;
+ /// Returns true iff a library has been loaded.
+
+ bool hasSymbol(const std::string& name);
+ /// Returns true iff the loaded library contains
+ /// a symbol with the given name.
+
+ void* getSymbol(const std::string& name);
+ /// Returns the address of the symbol with
+ /// the given name. For functions, this
+ /// is the entry point of the function.
+ /// Throws a NotFoundException if the symbol
+ /// does not exist.
+
+ const std::string& getPath() const;
+ /// Returns the path of the library, as
+ /// specified in a call to load() or the
+ /// constructor.
+
+ static std::string suffix();
+ /// Returns the platform-specific filename suffix
+ /// for shared libraries (including the period).
+ /// In debug mode, the suffix also includes a
+ /// "d" to specify the debug version of a library
+ /// (e.g., "d.so", "d.dll") unless the library has
+ /// been compiled with -DPOCO_NO_SHARED_LIBRARY_DEBUG_SUFFIX.
+
+ static bool setSearchPath(const std::string& path);
+ /// Adds the given path to the list of paths shared libraries
+ /// are searched in.
+ ///
+ /// Returns true if the path was set, otherwise false.
+ ///
+ /// Currently only supported on Windows, where it calls
+ /// SetDllDirectory(). On all other platforms, does not
+ /// do anything and returns false.
+
+private:
+ SharedLibrary(const SharedLibrary&);
+ SharedLibrary& operator = (const SharedLibrary&);
+};
+
+
+} // namespace Poco
+
+
+#endif // Foundation_SharedLibrary_INCLUDED