#include "src/trace_processor/importers/common/args_tracker.h"
#include <algorithm>
#include <cstddef>
#include <cstdint>
#include <optional>
#include <tuple>
#include "perfetto/base/logging.h"
#include "perfetto/ext/base/small_vector.h"
#include "src/trace_processor/db/column.h"
#include "src/trace_processor/db/typed_column.h"
#include "src/trace_processor/importers/common/args_translation_table.h"
#include "src/trace_processor/storage/trace_storage.h"
#include "src/trace_processor/types/trace_processor_context.h"
#include "src/trace_processor/types/variadic.h"
namespace perfetto::trace_processor {
ArgsTracker::ArgsTracker(TraceProcessorContext* context) : … { … }
ArgsTracker::~ArgsTracker() { … }
void ArgsTracker::AddArg(ColumnLegacy* arg_set_id,
uint32_t row,
StringId flat_key,
StringId key,
Variadic value,
UpdatePolicy update_policy) { … }
void ArgsTracker::Flush() { … }
ArgsTracker::CompactArgSet ArgsTracker::ToCompactArgSet(
const ColumnLegacy& column,
uint32_t row_number) && { … }
bool ArgsTracker::NeedsTranslation(const ArgsTranslationTable& table) const { … }
ArgsTracker::BoundInserter::BoundInserter(ArgsTracker* args_tracker,
ColumnLegacy* arg_set_id_column,
uint32_t row)
: … { … }
ArgsTracker::BoundInserter::~BoundInserter() = default;
}