diff options
| author | Shaheed Haque <srhaque@theiet.org> | 2017-02-04 11:16:19 +0000 | 
|---|---|---|
| committer | Stephen Kelly <steveire@gmail.com> | 2017-02-04 11:30:04 +0000 | 
| commit | 98d065773413aba437c0bc537c701ed39d38a9b9 (patch) | |
| tree | 817da50e7ca9e20ff0993caade125cd029e56d47 | |
| parent | 050f15ef6a0c44dc6a7abbbe0f1954ea1925f473 (diff) | |
| download | extra-cmake-modules-98d065773413aba437c0bc537c701ed39d38a9b9.tar.gz extra-cmake-modules-98d065773413aba437c0bc537c701ed39d38a9b9.tar.bz2 | |
Bindings: Take account of visibility of classes
| -rw-r--r-- | find-modules/sip_generator.py | 7 | ||||
| -rw-r--r-- | tests/GenerateSipBindings/cpplib.h | 6 | ||||
| -rw-r--r-- | tests/GenerateSipBindings/testscript.py | 5 | 
3 files changed, 17 insertions, 1 deletions
| diff --git a/find-modules/sip_generator.py b/find-modules/sip_generator.py index 5311e8c5..55220e2f 100644 --- a/find-modules/sip_generator.py +++ b/find-modules/sip_generator.py @@ -256,7 +256,12 @@ class SipGenerator(object):                  #                  pass              else: -                SipGenerator._report_ignoring(container, member) +                text = self._read_source(member.extent) +                if self.skippable_attribute(container, member, text, sip): +                    if not sip["name"]: +                        return "" +                else: +                    SipGenerator._report_ignoring(container, member)              def is_copy_constructor(member):                  if member.kind != CursorKind.CONSTRUCTOR: diff --git a/tests/GenerateSipBindings/cpplib.h b/tests/GenerateSipBindings/cpplib.h index b3ea22a8..958b8750 100644 --- a/tests/GenerateSipBindings/cpplib.h +++ b/tests/GenerateSipBindings/cpplib.h @@ -213,3 +213,9 @@ public:    EXPORT int visible_fn() { return 1; }    NO_EXPORT int invisible_fn() { return 1; }  }; + +class NO_EXPORT Invisible +{ +public: +  int someApi() { return 1; } +}; diff --git a/tests/GenerateSipBindings/testscript.py b/tests/GenerateSipBindings/testscript.py index 98443d53..b388841f 100644 --- a/tests/GenerateSipBindings/testscript.py +++ b/tests/GenerateSipBindings/testscript.py @@ -130,3 +130,8 @@ try:      assert False  except AttributeError as e:      assert str(e) == "'Visible' object has no attribute 'invisible_fn'" +try: +    invisible = PyTest.CppLib.Invisible() +    assert False +except AttributeError as e: +    assert str(e) == "module 'PyTest.CppLib' has no attribute 'Invisible'" | 
