PageRenderTime 38ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/trunk/Examples/ruby/import/spam.h

#
C++ Header | 24 lines | 21 code | 3 blank | 0 comment | 0 complexity | 0cb788fd2b6eae65a740818015c4bd51 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
  1. #include "bar.h"
  2. class Spam : public Bar {
  3. public:
  4. Spam() { }
  5. ~Spam() { }
  6. virtual const char * A() const {
  7. return "Spam::A";
  8. }
  9. const char * B() const {
  10. return "Spam::B";
  11. }
  12. virtual Base *toBase() {
  13. return static_cast<Base *>(this);
  14. }
  15. virtual Bar *toBar() {
  16. return static_cast<Bar *>(this);
  17. }
  18. static Spam *fromBase(Base *b) {
  19. return dynamic_cast<Spam *>(b);
  20. }
  21. };