Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import std.stdio;
- import std.traits;
- class Greeter(T) {
- static if (__traits(hasMember, T, "name")) {
- T person;
- this(T person) {
- this.person = person;
- }
- void greet() {
- writefln("hello %s!", person.name);
- }
- }
- void genericGreet() {
- writeln("hello world!");
- }
- }
- class Person {
- string name;
- this(string name) {
- this.name = name;
- }
- }
- void main() {
- auto g1 = new Greeter!(int)();
- auto g2 = new Greeter!(Person)(new Person("Alex"));
- g1.genericGreet();
- g2.greet();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement