Move away from using const references of std::vector<unsigned char> for target memory buffers. Replaced with std::span<const unsigned char> (via TargetMemoryBufferSpan alias)

This commit is contained in:
Nav
2024-11-16 21:49:49 +00:00
parent eebba986b5
commit 4147af618b
21 changed files with 39 additions and 33 deletions

View File

@@ -745,7 +745,7 @@ namespace DebugToolDrivers::Microchip::Protocols::Edbg::Avr
const Targets::TargetAddressSpaceDescriptor& addressSpaceDescriptor,
const Targets::TargetMemorySegmentDescriptor& memorySegmentDescriptor,
TargetMemoryAddress startAddress,
const TargetMemoryBuffer& buffer
Targets::TargetMemoryBufferSpan buffer
) {
if (memorySegmentDescriptor.type == TargetMemorySegmentType::FLASH) {
if (this->session.configVariant == Avr8ConfigVariant::XMEGA) {
@@ -1484,7 +1484,7 @@ namespace DebugToolDrivers::Microchip::Protocols::Edbg::Avr
void EdbgAvr8Interface::writeMemory(
Avr8MemoryType type,
TargetMemoryAddress startAddress,
const TargetMemoryBuffer& buffer
Targets::TargetMemoryBufferSpan buffer
) {
if (type == Avr8MemoryType::FUSES && this->session.configVariant == Avr8ConfigVariant::DEBUG_WIRE) {
throw Exception{"Cannot access AVR fuses via the debugWIRE interface"};
@@ -1548,7 +1548,7 @@ namespace DebugToolDrivers::Microchip::Protocols::Edbg::Avr
this->writeMemory(
type,
startAddress + bytesWritten,
TargetMemoryBuffer{buffer.begin() + bytesWritten, buffer.begin() + bytesWritten + chunkSize}
buffer.subspan(bytesWritten, chunkSize)
);
bytesWritten += chunkSize;