summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
diff options
context:
space:
mode:
authorKate Stone <katherine.stone@apple.com>2016-09-06 20:57:50 +0000
committerKate Stone <katherine.stone@apple.com>2016-09-06 20:57:50 +0000
commitb9c1b51e45b845debb76d8658edabca70ca56079 (patch)
treedfcb5a13ef2b014202340f47036da383eaee74aa /lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
parentd5aa73376966339caad04013510626ec2e42c760 (diff)
downloadbcm5719-llvm-b9c1b51e45b845debb76d8658edabca70ca56079.tar.gz
bcm5719-llvm-b9c1b51e45b845debb76d8658edabca70ca56079.zip
*** This commit represents a complete reformatting of the LLDB source code
*** to conform to clang-format’s LLVM style. This kind of mass change has *** two obvious implications: Firstly, merging this particular commit into a downstream fork may be a huge effort. Alternatively, it may be worth merging all changes up to this commit, performing the same reformatting operation locally, and then discarding the merge for this particular commit. The commands used to accomplish this reformatting were as follows (with current working directory as the root of the repository): find . \( -iname "*.c" -or -iname "*.cpp" -or -iname "*.h" -or -iname "*.mm" \) -exec clang-format -i {} + find . -iname "*.py" -exec autopep8 --in-place --aggressive --aggressive {} + ; The version of clang-format used was 3.9.0, and autopep8 was 1.2.4. Secondly, “blame” style tools will generally point to this commit instead of a meaningful prior commit. There are alternatives available that will attempt to look through this change and find the appropriate prior commit. YMMV. llvm-svn: 280751
Diffstat (limited to 'lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h')
-rw-r--r--lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h342
1 files changed, 143 insertions, 199 deletions
diff --git a/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h b/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
index 03b0bf3e2f0..0212772a4c3 100644
--- a/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
+++ b/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
@@ -16,217 +16,161 @@
// Other libraries and framework includes
// Project includes
-#include "lldb/Symbol/ObjectContainer.h"
#include "lldb/Core/ArchSpec.h"
#include "lldb/Core/ConstString.h"
-#include "lldb/Host/FileSpec.h"
#include "lldb/Core/UniqueCStringMap.h"
+#include "lldb/Host/FileSpec.h"
#include "lldb/Host/TimeValue.h"
+#include "lldb/Symbol/ObjectContainer.h"
-class ObjectContainerBSDArchive :
- public lldb_private::ObjectContainer
-{
+class ObjectContainerBSDArchive : public lldb_private::ObjectContainer {
public:
- ObjectContainerBSDArchive(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP& data_sp,
- lldb::offset_t data_offset,
- const lldb_private::FileSpec *file,
- lldb::offset_t offset,
- lldb::offset_t length);
-
- ~ObjectContainerBSDArchive() override;
-
- //------------------------------------------------------------------
- // Static Functions
- //------------------------------------------------------------------
- static void
- Initialize();
-
- static void
- Terminate();
-
- static lldb_private::ConstString
- GetPluginNameStatic();
-
- static const char *
- GetPluginDescriptionStatic();
-
- static lldb_private::ObjectContainer *
- CreateInstance (const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP& data_sp,
- lldb::offset_t data_offset,
- const lldb_private::FileSpec *file,
- lldb::offset_t offset,
- lldb::offset_t length);
-
- static size_t
- GetModuleSpecifications (const lldb_private::FileSpec& file,
- lldb::DataBufferSP& data_sp,
- lldb::offset_t data_offset,
- lldb::offset_t file_offset,
- lldb::offset_t length,
- lldb_private::ModuleSpecList &specs);
-
- static bool
- MagicBytesMatch (const lldb_private::DataExtractor &data);
-
- //------------------------------------------------------------------
- // Member Functions
- //------------------------------------------------------------------
- bool
- ParseHeader() override;
-
- size_t
- GetNumObjects() const override
- {
- if (m_archive_sp)
- return m_archive_sp->GetNumObjects();
- return 0;
- }
+ ObjectContainerBSDArchive(const lldb::ModuleSP &module_sp,
+ lldb::DataBufferSP &data_sp,
+ lldb::offset_t data_offset,
+ const lldb_private::FileSpec *file,
+ lldb::offset_t offset, lldb::offset_t length);
+
+ ~ObjectContainerBSDArchive() override;
+
+ //------------------------------------------------------------------
+ // Static Functions
+ //------------------------------------------------------------------
+ static void Initialize();
+
+ static void Terminate();
+
+ static lldb_private::ConstString GetPluginNameStatic();
+
+ static const char *GetPluginDescriptionStatic();
- void
- Dump(lldb_private::Stream *s) const override;
+ static lldb_private::ObjectContainer *
+ CreateInstance(const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
+ lldb::offset_t data_offset, const lldb_private::FileSpec *file,
+ lldb::offset_t offset, lldb::offset_t length);
- lldb::ObjectFileSP
- GetObjectFile(const lldb_private::FileSpec *file) override;
+ static size_t GetModuleSpecifications(const lldb_private::FileSpec &file,
+ lldb::DataBufferSP &data_sp,
+ lldb::offset_t data_offset,
+ lldb::offset_t file_offset,
+ lldb::offset_t length,
+ lldb_private::ModuleSpecList &specs);
- //------------------------------------------------------------------
- // PluginInterface protocol
- //------------------------------------------------------------------
- lldb_private::ConstString
- GetPluginName() override;
+ static bool MagicBytesMatch(const lldb_private::DataExtractor &data);
- uint32_t
- GetPluginVersion() override;
+ //------------------------------------------------------------------
+ // Member Functions
+ //------------------------------------------------------------------
+ bool ParseHeader() override;
+
+ size_t GetNumObjects() const override {
+ if (m_archive_sp)
+ return m_archive_sp->GetNumObjects();
+ return 0;
+ }
+
+ void Dump(lldb_private::Stream *s) const override;
+
+ lldb::ObjectFileSP GetObjectFile(const lldb_private::FileSpec *file) override;
+
+ //------------------------------------------------------------------
+ // PluginInterface protocol
+ //------------------------------------------------------------------
+ lldb_private::ConstString GetPluginName() override;
+
+ uint32_t GetPluginVersion() override;
protected:
- struct Object
- {
- Object();
-
- void
- Clear();
-
- lldb::offset_t
- Extract (const lldb_private::DataExtractor& data, lldb::offset_t offset);
-
- lldb_private::ConstString ar_name; // name
- uint32_t ar_date; // modification time
- uint16_t ar_uid; // user id
- uint16_t ar_gid; // group id
- uint16_t ar_mode; // octal file permissions
- uint32_t ar_size; // size in bytes
- lldb::offset_t ar_file_offset; // file offset in bytes from the beginning of the file of the object data
- lldb::offset_t ar_file_size; // length of the object data
-
- typedef std::vector<Object> collection;
- typedef collection::iterator iterator;
- typedef collection::const_iterator const_iterator;
- };
-
- class Archive
- {
- public:
- typedef std::shared_ptr<Archive> shared_ptr;
- typedef std::multimap<lldb_private::FileSpec, shared_ptr> Map;
-
- Archive(const lldb_private::ArchSpec &arch,
- const lldb_private::TimeValue &mod_time,
- lldb::offset_t file_offset,
- lldb_private::DataExtractor &data);
-
- ~Archive();
-
- static Map &
- GetArchiveCache ();
-
- static std::recursive_mutex &
- GetArchiveCacheMutex();
-
- static Archive::shared_ptr
- FindCachedArchive (const lldb_private::FileSpec &file,
- const lldb_private::ArchSpec &arch,
- const lldb_private::TimeValue &mod_time,
- lldb::offset_t file_offset);
-
- static Archive::shared_ptr
- ParseAndCacheArchiveForFile (const lldb_private::FileSpec &file,
- const lldb_private::ArchSpec &arch,
- const lldb_private::TimeValue &mod_time,
- lldb::offset_t file_offset,
- lldb_private::DataExtractor &data);
-
- size_t
- GetNumObjects () const
- {
- return m_objects.size();
- }
-
- const Object *
- GetObjectAtIndex (size_t idx)
- {
- if (idx < m_objects.size())
- return &m_objects[idx];
- return NULL;
- }
-
- size_t
- ParseObjects ();
-
- Object *
- FindObject (const lldb_private::ConstString &object_name,
- const lldb_private::TimeValue &object_mod_time);
-
- lldb::offset_t
- GetFileOffset () const
- {
- return m_file_offset;
- }
-
- const lldb_private::TimeValue &
- GetModificationTime()
- {
- return m_time;
- }
-
- const lldb_private::ArchSpec &
- GetArchitecture () const
- {
- return m_arch;
- }
-
- void
- SetArchitecture (const lldb_private::ArchSpec &arch)
- {
- m_arch = arch;
- }
-
- bool
- HasNoExternalReferences() const;
-
- lldb_private::DataExtractor &
- GetData ()
- {
- return m_data;
- }
-
- protected:
- typedef lldb_private::UniqueCStringMap<uint32_t> ObjectNameToIndexMap;
- //----------------------------------------------------------------------
- // Member Variables
- //----------------------------------------------------------------------
- lldb_private::ArchSpec m_arch;
- lldb_private::TimeValue m_time;
- lldb::offset_t m_file_offset;
- Object::collection m_objects;
- ObjectNameToIndexMap m_object_name_to_index_map;
- lldb_private::DataExtractor m_data; ///< The data for this object container so we don't lose data if the .a files gets modified
- };
-
- void
- SetArchive (Archive::shared_ptr &archive_sp);
-
- Archive::shared_ptr m_archive_sp;
+ struct Object {
+ Object();
+
+ void Clear();
+
+ lldb::offset_t Extract(const lldb_private::DataExtractor &data,
+ lldb::offset_t offset);
+
+ lldb_private::ConstString ar_name; // name
+ uint32_t ar_date; // modification time
+ uint16_t ar_uid; // user id
+ uint16_t ar_gid; // group id
+ uint16_t ar_mode; // octal file permissions
+ uint32_t ar_size; // size in bytes
+ lldb::offset_t ar_file_offset; // file offset in bytes from the beginning of
+ // the file of the object data
+ lldb::offset_t ar_file_size; // length of the object data
+
+ typedef std::vector<Object> collection;
+ typedef collection::iterator iterator;
+ typedef collection::const_iterator const_iterator;
+ };
+
+ class Archive {
+ public:
+ typedef std::shared_ptr<Archive> shared_ptr;
+ typedef std::multimap<lldb_private::FileSpec, shared_ptr> Map;
+
+ Archive(const lldb_private::ArchSpec &arch,
+ const lldb_private::TimeValue &mod_time, lldb::offset_t file_offset,
+ lldb_private::DataExtractor &data);
+
+ ~Archive();
+
+ static Map &GetArchiveCache();
+
+ static std::recursive_mutex &GetArchiveCacheMutex();
+
+ static Archive::shared_ptr FindCachedArchive(
+ const lldb_private::FileSpec &file, const lldb_private::ArchSpec &arch,
+ const lldb_private::TimeValue &mod_time, lldb::offset_t file_offset);
+
+ static Archive::shared_ptr ParseAndCacheArchiveForFile(
+ const lldb_private::FileSpec &file, const lldb_private::ArchSpec &arch,
+ const lldb_private::TimeValue &mod_time, lldb::offset_t file_offset,
+ lldb_private::DataExtractor &data);
+
+ size_t GetNumObjects() const { return m_objects.size(); }
+
+ const Object *GetObjectAtIndex(size_t idx) {
+ if (idx < m_objects.size())
+ return &m_objects[idx];
+ return NULL;
+ }
+
+ size_t ParseObjects();
+
+ Object *FindObject(const lldb_private::ConstString &object_name,
+ const lldb_private::TimeValue &object_mod_time);
+
+ lldb::offset_t GetFileOffset() const { return m_file_offset; }
+
+ const lldb_private::TimeValue &GetModificationTime() { return m_time; }
+
+ const lldb_private::ArchSpec &GetArchitecture() const { return m_arch; }
+
+ void SetArchitecture(const lldb_private::ArchSpec &arch) { m_arch = arch; }
+
+ bool HasNoExternalReferences() const;
+
+ lldb_private::DataExtractor &GetData() { return m_data; }
+
+ protected:
+ typedef lldb_private::UniqueCStringMap<uint32_t> ObjectNameToIndexMap;
+ //----------------------------------------------------------------------
+ // Member Variables
+ //----------------------------------------------------------------------
+ lldb_private::ArchSpec m_arch;
+ lldb_private::TimeValue m_time;
+ lldb::offset_t m_file_offset;
+ Object::collection m_objects;
+ ObjectNameToIndexMap m_object_name_to_index_map;
+ lldb_private::DataExtractor m_data; ///< The data for this object container
+ ///so we don't lose data if the .a files
+ ///gets modified
+ };
+
+ void SetArchive(Archive::shared_ptr &archive_sp);
+
+ Archive::shared_ptr m_archive_sp;
};
#endif // liblldb_ObjectContainerBSDArchive_h_
OpenPOWER on IntegriCloud