File Coverage

t/typemap/object/casting.xsi
Criterion Covered Total %
statement 8 10 80.0
branch 6 12 50.0
condition n/a
subroutine n/a
pod n/a
total 14 22 63.6


line stmt bran cond sub pod time code
1             MODE: INLINE
2              
3             struct ObjectA {};
4             struct ObjectB {};
5              
6             namespace xs {
7             template <> struct Typemap : TypemapObject {
8             static std::string package () { return "MyTest::ObjectA"; }
9             };
10              
11             template <> struct Typemap : TypemapObject {
12             static std::string package () { return "MyTest::ObjectB"; }
13             };
14              
15             }
16              
17             MODULE = MyTest::Typemap::Object PACKAGE = MyTest::ObjectA
18             PROTOTYPES: DISABLE
19              
20 2           ObjectA* ObjectA::new() { RETVAL = new ObjectA(); }
21 1 50          
22 1 50         bool check(Sv obj) {
23 1 50         auto me = xs::in(obj);
24             (void)me;
25 0           RETVAL = true;
26             }
27              
28             MODULE = MyTest::Typemap::Object PACKAGE = MyTest::ObjectB
29             PROTOTYPES: DISABLE
30              
31 2           ObjectB* ObjectB::new() { RETVAL = new ObjectB(); }
32 1 50          
33 1 50         bool check(Sv obj) {
34 1 50         auto me = xs::in(obj);
35             (void)me;
36 0           RETVAL = true;
37             }