blob: b678865bfb98bba8854d8eb45c0e29464fa7a680 [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/developer/debug/shared/address_range.h"
#include <inttypes.h>
#include "src/lib/fxl/strings/string_printf.h"
namespace debug_ipc {
// Implemented out-of-line to avoid bringing <algorithm> into all headers that use address_range.h.
AddressRange AddressRange::Union(const AddressRange& other) const {
if (other.empty())
return *this;
if (empty())
return other;
return AddressRange(std::min(begin_, other.begin_), std::max(end_, other.end_));
}
std::string AddressRange::ToString() const {
return fxl::StringPrintf("[0x%" PRIx64 ", 0x%" PRIx64 ")", begin_, end_);
}
} // namespace debug_ipc