1 module director_ignore_runme;
2 
3 import director_ignore.DIgnores;
4 import director_ignore.DAbstractIgnores;
5 
main()6 void main() {
7   // Just check the classes can be instantiated and other methods work as expected
8   auto a = new DIgnoresDerived();
9   if (a.Triple(5) != 15)
10     throw new Exception("Triple failed");
11 
12   auto b = new DAbstractIgnoresDerived();
13   if (b.Quadruple(5) != 20)
14     throw new Exception("Quadruple failed");
15 }
16 
17 class DIgnoresDerived : DIgnores {
18 public:
19   // These will give a warning if the %ignore is not working
OverloadedMethod(int n,int xoffset,int yoffset)20   int OverloadedMethod(int n, int xoffset, int yoffset) { return 0; }
OverloadedMethod(int n,int xoffset)21   int OverloadedMethod(int n, int xoffset) { return 0; }
OverloadedMethod(int n)22   int OverloadedMethod(int n) { return 0; }
23 
OverloadedProtectedMethod(int n,int xoffset,int yoffset)24   int OverloadedProtectedMethod(int n, int xoffset, int yoffset) { return 0; }
OverloadedProtectedMethod(int n,int xoffset)25   int OverloadedProtectedMethod(int n, int xoffset) { return 0; }
OverloadedProtectedMethod(int n)26   int OverloadedProtectedMethod(int n) { return 0; }
27 }
28 
29 class DAbstractIgnoresDerived : DAbstractIgnores {
30 public:
31   // These will give a warning if the %ignore is not working
OverloadedMethod(int n,int xoffset,int yoffset)32   int OverloadedMethod(int n, int xoffset, int yoffset) { return 0; }
OverloadedMethod(int n,int xoffset)33   int OverloadedMethod(int n, int xoffset) { return 0; }
OverloadedMethod(int n)34   int OverloadedMethod(int n) { return 0; }
35 
OverloadedProtectedMethod(int n,int xoffset,int yoffset)36   int OverloadedProtectedMethod(int n, int xoffset, int yoffset) { return 0; }
OverloadedProtectedMethod(int n,int xoffset)37   int OverloadedProtectedMethod(int n, int xoffset) { return 0; }
OverloadedProtectedMethod(int n)38   int OverloadedProtectedMethod(int n) { return 0; }
39 }
40