chromium/base/profiler/module_cache.cc

// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "base/profiler/module_cache.h"

#include <iterator>
#include <string_view>
#include <utility>

#include "base/check_op.h"
#include "base/ranges/algorithm.h"
#include "base/strings/strcat.h"

namespace base {

namespace {

// Supports heterogeneous comparisons on modules and addresses, for use in
// binary searching modules sorted by range for a contained address.
struct ModuleAddressCompare {};

}  // namespace

std::string TransformModuleIDToSymbolServerFormat(std::string_view module_id) {}

ModuleCache::ModuleCache() = default;

ModuleCache::~ModuleCache() {}

const ModuleCache::Module* ModuleCache::GetModuleForAddress(uintptr_t address) {}

std::vector<const ModuleCache::Module*> ModuleCache::GetModules() const {}

void ModuleCache::UpdateNonNativeModules(
    const std::vector<const Module*>& defunct_modules,
    std::vector<std::unique_ptr<const Module>> new_modules) {}

void ModuleCache::AddCustomNativeModule(std::unique_ptr<const Module> module) {}

const ModuleCache::Module* ModuleCache::GetExistingModuleForAddress(
    uintptr_t address) const {}

void ModuleCache::RegisterAuxiliaryModuleProvider(
    AuxiliaryModuleProvider* auxiliary_module_provider) {}

void ModuleCache::UnregisterAuxiliaryModuleProvider(
    AuxiliaryModuleProvider* auxiliary_module_provider) {}

bool ModuleCache::ModuleAndAddressCompare::operator()(
    const std::unique_ptr<const Module>& m1,
    const std::unique_ptr<const Module>& m2) const {}

bool ModuleCache::ModuleAndAddressCompare::operator()(
    const std::unique_ptr<const Module>& m1,
    uintptr_t address) const {}

bool ModuleCache::ModuleAndAddressCompare::operator()(
    uintptr_t address,
    const std::unique_ptr<const Module>& m2) const {}

}  // namespace base