[yaml2obj] Move some classes into anonymous namespaces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184025 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Sean Silva 2013-06-15 00:31:46 +00:00
parent fe57e347a5
commit f3f3523b9c

View File

@ -33,6 +33,7 @@ using namespace llvm;
// to deduplicate suffixes. std::map<> with a custom comparator is likely
// to be the simplest implementation, but a suffix trie could be more
// suitable for the job.
namespace {
class StringTableBuilder {
/// \brief Indices of strings currently present in `Buf`.
StringMap<unsigned> StringIndices;
@ -60,10 +61,12 @@ public:
OS.write(Buf.data(), Buf.size());
}
};
} // end anonymous namespace
// This class is used to build up a contiguous binary blob while keeping
// track of an offset in the output (which notionally begins at
// `InitialOffset`).
namespace {
class ContiguousBlobAccumulator {
const uint64_t InitialOffset;
raw_svector_ostream OS;
@ -75,9 +78,11 @@ public:
uint64_t currentOffset() const { return InitialOffset + OS.tell(); }
void writeBlobToStream(raw_ostream &Out) { Out << OS.str(); }
};
} // end anonymous namespace
// Used to keep track of section names, so that in the YAML file sections
// can be referenced by name instead of by index.
namespace {
class SectionNameToIdxMap {
StringMap<int> Map;
public:
@ -98,6 +103,7 @@ public:
return false;
}
};
} // end anonymous namespace
template <class T>
static size_t vectorDataSize(const std::vector<T> &Vec) {