Mercurial > projects > qtd
comparison qt/qtd/MOC.d @ 331:1defd6a98364 signals
Make static constructors shared. Requires new dmd. Remove irrelevant junk
author | eldar1@eldar1-laptop |
---|---|
date | Fri, 22 Jan 2010 23:59:07 +0000 |
parents | 115130499d78 |
children | 4e31cbd9e20c |
comparison
equal
deleted
inserted
replaced
330:115130499d78 | 331:1defd6a98364 |
---|---|
456 | 456 |
457 string generateQMetaObject(string className) | 457 string generateQMetaObject(string className) |
458 { | 458 { |
459 string res; | 459 string res; |
460 res ~= " | 460 res ~= " |
461 public QMetaObject metaObject() | 461 public QMetaObject metaObject() { return staticMetaObject(); } |
462 private static __gshared QMetaObject _staticMetaObject; | |
463 private static __gshared QMetaObjectNative _nativeStaticMetaObject; | |
464 public static QMetaObject staticMetaObject() | |
462 { | 465 { |
463 if(!_staticMetaObject) | 466 if(!_staticMetaObject) |
464 createStaticMetaObject(); | 467 createStaticMetaObject(); |
465 return staticMetaObject(); | 468 return _staticMetaObject; |
466 } | 469 } |
467 private static __gshared QMetaObject _staticMetaObject; | |
468 private static __gshared QMetaObjectNative _nativeStaticMetaObject; | |
469 public static QMetaObject staticMetaObject() { return _staticMetaObject; } | |
470 protected static void createStaticMetaObject() { | 470 protected static void createStaticMetaObject() { |
471 assert(!_staticMetaObject); | 471 assert(!_staticMetaObject); |
472 alias BaseClassesTuple!(typeof(this))[0] BaseClass; | 472 alias BaseClassesTuple!(typeof(this))[0] BaseClass; |
473 if (!BaseClass._staticMetaObject) | 473 if (!BaseClass._staticMetaObject) |
474 BaseClass.createStaticMetaObject; | 474 BaseClass.createStaticMetaObject; |