14 #ifndef LLVM_OBJECT_ARCHIVE_H
15 #define LLVM_OBJECT_ARCHIVE_H
47 virtual void anchor();
64 assert(Parent == other.Parent);
85 uint64_t
getSize()
const {
return Data.
size() - StartOfFile; }
92 bool FullPath =
false)
const;
107 return child == other.child;
111 return !(*
this == other);
115 return child < other.child;
126 uint32_t SymbolIndex;
127 uint32_t StringIndex;
131 return (Parent == other.Parent) && (SymbolIndex == other.SymbolIndex);
137 , StringIndex(stri) {}
152 return symbol == other.symbol;
156 return !(*
this == other);
194 child_iterator SymbolTable;
195 child_iterator StringTable;
196 child_iterator FirstRegular;
child_iterator end_children() const
bool operator<(const child_iterator &other) const
size_t size() const
size - Get the string size.
bool operator==(const symbol_iterator &other) const
sys::fs::perms getAccessMode() const
const Symbol * operator->() const
sys::TimeValue getLastModified() const
bool operator==(const child_iterator &other) const
child_iterator(const Child &c)
error_code getName(StringRef &Result) const
error_code getMember(child_iterator &Result) const
child_iterator & operator++()
error_code getName(StringRef &Result) const
bool operator!=(const symbol_iterator &other) const
child_iterator begin_children(bool SkipInternal=true) const
const char * data() const
Symbol(const Archive *p, uint32_t symi, uint32_t stri)
bool hasSymbolTable() const
bool operator==(const Child &other) const
symbol_iterator begin_symbols() const
error_code getAsBinary(OwningPtr< Binary > &Result) const
error_code getMemoryBuffer(OwningPtr< MemoryBuffer > &Result, bool FullPath=false) const
bool operator==(const Symbol &other) const
Child(const Archive *Parent, const char *Start)
const Child * operator->() const
child_iterator findSym(StringRef name) const
StringRef getBuffer() const
Archive(MemoryBuffer *source, error_code &ec)
StringRef getRawName() const
bool operator<(const Child &other) const
symbol_iterator end_symbols() const
Provides an abstraction for a fixed point in time.
static bool classof(Binary const *v)
symbol_iterator(const Symbol &s)
bool operator!=(const child_iterator &other) const
symbol_iterator & operator++()