diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 00:45:20 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 00:45:20 +0000 |
commit | 9a08cbfcc1ef900a04580f35afe2a4592d7d6030 (patch) | |
tree | 004cc7027bca2f2c0bcb5806527c8e0c48df2d6e /scripts/t/Dpkg_Shlibs/patterns.cpp | |
parent | Initial commit. (diff) | |
download | dpkg-9a08cbfcc1ef900a04580f35afe2a4592d7d6030.tar.xz dpkg-9a08cbfcc1ef900a04580f35afe2a4592d7d6030.zip |
Adding upstream version 1.19.8.upstream/1.19.8upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'scripts/t/Dpkg_Shlibs/patterns.cpp')
-rw-r--r-- | scripts/t/Dpkg_Shlibs/patterns.cpp | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/scripts/t/Dpkg_Shlibs/patterns.cpp b/scripts/t/Dpkg_Shlibs/patterns.cpp new file mode 100644 index 0000000..8bfcb4d --- /dev/null +++ b/scripts/t/Dpkg_Shlibs/patterns.cpp @@ -0,0 +1,107 @@ +#define EXPORT(x) x {} + +namespace NSA +{ + class ClassA + { + private: + class Private + { + public: + Private(); + virtual ~Private(); + void privmethod1(int); + void privmethod2(int); + }; + Private *p; + class Internal + { + public: + Internal(); + virtual ~Internal(); + void internal_method1(char); + void internal_method2(char); + }; + Internal *i; + public: + ClassA(); + virtual ~ClassA(); + virtual void generate_vt(const char *) const; + }; + + EXPORT(ClassA::Private::Private()); + EXPORT(ClassA::Private::~Private()); + EXPORT(void ClassA::Private::privmethod1(int)); + EXPORT(void ClassA::Private::privmethod2(int)); + + EXPORT(ClassA::Internal::Internal()); + EXPORT(ClassA::Internal::~Internal()); + EXPORT(void ClassA::Internal::internal_method1(char)); + EXPORT(void ClassA::Internal::internal_method2(char)); + + EXPORT(ClassA::ClassA()); + EXPORT(ClassA::~ClassA()); + EXPORT(void ClassA::generate_vt(const char *) const); +}; + +class ClassB +{ + public: + ClassB(); + virtual ~ClassB(); + virtual void generate_vt(const char *) const; +}; + +EXPORT(ClassB::ClassB()); +EXPORT(ClassB::~ClassB()); +EXPORT(void ClassB::generate_vt(const char *) const); + +class ClassC +{ + public: + ClassC(); + virtual ~ClassC(); + virtual void generate_vt(const char *) const; +}; + +EXPORT(ClassC::ClassC()); +EXPORT(ClassC::~ClassC()); +EXPORT(void ClassC::generate_vt(const char *) const); + +namespace NSB +{ + class ClassD : public NSA::ClassA, public ClassB, public ClassC + { + public: + ClassD(); + virtual ~ClassD(); + virtual void generate_vt(const char *) const override; + }; + + EXPORT(ClassD::ClassD()); + EXPORT(ClassD::~ClassD()); + EXPORT(void ClassD::generate_vt(const char *) const); + + class Symver { + public: + Symver(); + ~Symver(); + + void symver_method1(); + void symver_method2(); + }; + + EXPORT(Symver::Symver()); + EXPORT(Symver::~Symver()); + EXPORT(void Symver::symver_method1()); + EXPORT(void Symver::symver_method2()); + + class SymverOptional { + public: + SymverOptional(); + ~SymverOptional(); + }; + + EXPORT(SymverOptional::SymverOptional()); + EXPORT(SymverOptional::~SymverOptional()); +}; |