diff options
author | Greg Clayton <gclayton@apple.com> | 2012-01-07 00:45:50 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2012-01-07 00:45:50 +0000 |
commit | 0f28986a54b808f6ec3ec46f850d1a82c2f755e4 (patch) | |
tree | 9492b384eed13b92b8c86c2adc027d2ee7c18e47 /lldb/scripts/Python | |
parent | cbf2fe066a2b2ba7a23f6ed5ab2470771df51bd5 (diff) | |
download | bcm5719-llvm-0f28986a54b808f6ec3ec46f850d1a82c2f755e4.tar.gz bcm5719-llvm-0f28986a54b808f6ec3ec46f850d1a82c2f755e4.zip |
Patch from Enrico Granata that moves SBData related functions into the SBData
class instead of requiring a live process in order to be able to create useful
SBData objects.
llvm-svn: 147702
Diffstat (limited to 'lldb/scripts/Python')
-rw-r--r-- | lldb/scripts/Python/interface/SBData.i | 49 | ||||
-rw-r--r-- | lldb/scripts/Python/interface/SBProcess.i | 18 |
2 files changed, 46 insertions, 21 deletions
diff --git a/lldb/scripts/Python/interface/SBData.i b/lldb/scripts/Python/interface/SBData.i index 5ecf2c26e1e..1d041a3c962 100644 --- a/lldb/scripts/Python/interface/SBData.i +++ b/lldb/scripts/Python/interface/SBData.i @@ -22,6 +22,9 @@ public: uint8_t GetAddressByteSize (); + + void + SetAddressByteSize (uint8_t addr_byte_size); void Clear (); @@ -34,6 +37,9 @@ public: lldb::ByteOrder GetByteOrder(); + + void + SetByteOrder (lldb::ByteOrder endian); float GetFloat (lldb::SBError& error, uint32_t offset); @@ -84,11 +90,48 @@ public: size_t size); void - SetData(lldb::SBError& error, const void *buf, size_t size, lldb::ByteOrder endian, uint8_t addr_size); + SetData (lldb::SBError& error, const void *buf, size_t size, lldb::ByteOrder endian, uint8_t addr_size); bool - Append(const SBData& rhs); - + Append (const SBData& rhs); + + static lldb::SBData + CreateDataFromCString (lldb::ByteOrder endian, uint32_t addr_byte_size, const char* data); + + // in the following CreateData*() and SetData*() prototypes, the two parameters array and array_len + // should not be renamed or rearranged, because doing so will break the SWIG typemap + static lldb::SBData + CreateDataFromUInt64Array (lldb::ByteOrder endian, uint32_t addr_byte_size, uint64_t* array, size_t array_len); + + static lldb::SBData + CreateDataFromUInt32Array (lldb::ByteOrder endian, uint32_t addr_byte_size, uint32_t* array, size_t array_len); + + static lldb::SBData + CreateDataFromSInt64Array (lldb::ByteOrder endian, uint32_t addr_byte_size, int64_t* array, size_t array_len); + + static lldb::SBData + CreateDataFromSInt32Array (lldb::ByteOrder endian, uint32_t addr_byte_size, int32_t* array, size_t array_len); + + static lldb::SBData + CreateDataFromDoubleArray (lldb::ByteOrder endian, uint32_t addr_byte_size, double* array, size_t array_len); + + bool + SetDataFromCString (const char* data); + + bool + SetDataFromUInt64Array (uint64_t* array, size_t array_len); + + bool + SetDataFromUInt32Array (uint32_t* array, size_t array_len); + + bool + SetDataFromSInt64Array (int64_t* array, size_t array_len); + + bool + SetDataFromSInt32Array (int32_t* array, size_t array_len); + + bool + SetDataFromDoubleArray (double* array, size_t array_len); }; diff --git a/lldb/scripts/Python/interface/SBProcess.i b/lldb/scripts/Python/interface/SBProcess.i index ee324d21b11..659966fff73 100644 --- a/lldb/scripts/Python/interface/SBProcess.i +++ b/lldb/scripts/Python/interface/SBProcess.i @@ -281,24 +281,6 @@ public: lldb::SBError UnloadImage (uint32_t image_token); - lldb::SBData - GetDataFromCString(const char* data); - - lldb::SBData - GetDataFromUnsignedInt64Array(uint64_t* array, size_t array_len); - - lldb::SBData - GetDataFromUnsignedInt32Array(uint32_t* array, size_t array_len); - - lldb::SBData - GetDataFromSignedInt64Array(int64_t* array, size_t array_len); - - lldb::SBData - GetDataFromSignedInt32Array(int32_t* array, size_t array_len); - - lldb::SBData - GetDataFromDoubleArray(double* array, size_t array_len); - }; } // namespace lldb |