43 lines
1.5 KiB
D
43 lines
1.5 KiB
D
|
|
module director_ignore_runme;
|
||
|
|
|
||
|
|
import std.exception;
|
||
|
|
import director_ignore.DIgnores;
|
||
|
|
import director_ignore.DAbstractIgnores;
|
||
|
|
|
||
|
|
void main() {
|
||
|
|
// Just check the classes can be instantiated and other methods work as expected
|
||
|
|
auto a = new DIgnoresDerived();
|
||
|
|
enforce(a.Triple(5) == 15, "Triple failed");
|
||
|
|
|
||
|
|
auto b = new DAbstractIgnoresDerived();
|
||
|
|
enforce(b.Quadruple(5) == 20, "Quadruple failed");
|
||
|
|
}
|
||
|
|
|
||
|
|
class DIgnoresDerived : DIgnores {
|
||
|
|
public:
|
||
|
|
// These will give a warning if the %ignore is not working
|
||
|
|
int OverloadedMethod(int n, int xoffset, int yoffset) { return 0; }
|
||
|
|
int OverloadedMethod(int n, int xoffset) { return 0; }
|
||
|
|
int OverloadedMethod(int n) { return 0; }
|
||
|
|
alias OverloadedMethod = DIgnores.OverloadedMethod;
|
||
|
|
|
||
|
|
protected:
|
||
|
|
int OverloadedProtectedMethod(int n, int xoffset, int yoffset) { return 0; }
|
||
|
|
int OverloadedProtectedMethod(int n, int xoffset) { return 0; }
|
||
|
|
int OverloadedProtectedMethod(int n) { return 0; }
|
||
|
|
}
|
||
|
|
|
||
|
|
class DAbstractIgnoresDerived : DAbstractIgnores {
|
||
|
|
public:
|
||
|
|
// These will give a warning if the %ignore is not working
|
||
|
|
int OverloadedMethod(int n, int xoffset, int yoffset) { return 0; }
|
||
|
|
int OverloadedMethod(int n, int xoffset) { return 0; }
|
||
|
|
int OverloadedMethod(int n) { return 0; }
|
||
|
|
alias OverloadedMethod = DAbstractIgnores.OverloadedMethod;
|
||
|
|
|
||
|
|
protected:
|
||
|
|
int OverloadedProtectedMethod(int n, int xoffset, int yoffset) { return 0; }
|
||
|
|
int OverloadedProtectedMethod(int n, int xoffset) { return 0; }
|
||
|
|
int OverloadedProtectedMethod(int n) { return 0; }
|
||
|
|
}
|