X-Git-Url: http://deadsoftware.ru/gitweb?p=odcread.git;a=blobdiff_plain;f=alien.cc;h=dc4f50920c7d61d30bec5744a7bba9e8ccacd018;hp=fddd2024dbcb0dfd2ee200c52b3b93170f8c6a54;hb=d7f2452e20b04d1559b7bdd3aa49b6fbf7d0abaf;hpb=cf035fa1849a5e65c0d636ce2718bc2c85994680 diff --git a/alien.cc b/alien.cc index fddd202..dc4f509 100644 --- a/alien.cc +++ b/alien.cc @@ -8,8 +8,7 @@ std::string AlienPiece::toString() { return std::string("AlienPiece"); } -std::string AlienPiece::toPlainText() { - return std::string(); +void AlienPiece::accept(Visitor &visitor) const { } AlienPart::AlienPart(Store * const store): d_store(store) {} @@ -21,11 +20,10 @@ std::string AlienPart::toString() { return "NULL"; } -std::string AlienPart::toPlainText() { - if (d_store != 0) - return d_store->toPlainText(); - else - return std::string(); +void AlienPart::accept(Visitor &visitor) const { + if (d_store != 0) { + d_store->accept(visitor); + } } Alien::Alien(INTEGER id, const TypePath &path): Store(id), d_path(path), d_comps() {} @@ -42,12 +40,10 @@ std::string Alien::toString() { return sofar + "}"; } -std::string Alien::toPlainText() { - std::string sofar = std::string(); +void Alien::accept(Visitor &visitor) const { for (int i = 0; i < d_comps.size(); ++i) { - sofar += d_comps[i]->toPlainText(); + d_comps[i]->accept(visitor); } - return sofar; } }