DEADSOFTWARE

Testing odcread against a bunch of existing .odc files
[odcread.git] / alien.cc
1 #include <alien.h>
3 namespace odc {
5 AlienPiece::AlienPiece(const char * const _data, const size_t _len): data(_data), len(_len) {}
7 std::string AlienPiece::toString() {
8 return std::string("AlienPiece");
9 }
11 void AlienPiece::accept(Visitor &visitor) const {
12 }
14 AlienPart::AlienPart(Store * const store): d_store(store) {}
16 std::string AlienPart::toString() {
17 if (d_store != 0)
18 return d_store->toString();
19 else
20 return "NULL";
21 }
23 void AlienPart::accept(Visitor &visitor) const {
24 if (d_store != 0) {
25 d_store->accept(visitor);
26 }
27 }
29 Alien::Alien(INTEGER id, const TypePath &path): Store(id), d_path(path), d_comps() {}
31 std::vector<AlienComponent*> & Alien::getComponents() {
32 return d_comps;
33 }
35 std::string Alien::toString() {
36 std::string sofar = d_path.toString() + "{ ";
37 for (int i = 0; i < d_comps.size(); ++i) {
38 sofar += d_comps[i]->toString() + " ";
39 }
40 return sofar + "}";
41 }
43 void Alien::accept(Visitor &visitor) const {
44 for (int i = 0; i < d_comps.size(); ++i) {
45 d_comps[i]->accept(visitor);
46 }
47 }
49 }