clang 20.0.0 (based on r547379) from build 12806354. Bug: http://b/379133546 Test: N/A Change-Id: I2eb8938af55d809de674be63cb30cf27e801862b Upstream-Commit: ad834e67b1105d15ef907f6255d4c96e8e733f57
53 lines
1.8 KiB
C++
53 lines
1.8 KiB
C++
//===-- StoppointCallbackContext.h ------------------------------*- C++ -*-===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLDB_BREAKPOINT_STOPPOINTCALLBACKCONTEXT_H
|
|
#define LLDB_BREAKPOINT_STOPPOINTCALLBACKCONTEXT_H
|
|
|
|
#include "lldb/Target/ExecutionContext.h"
|
|
#include "lldb/lldb-private.h"
|
|
|
|
namespace lldb_private {
|
|
|
|
/// \class StoppointCallbackContext StoppointCallbackContext.h
|
|
/// "lldb/Breakpoint/StoppointCallbackContext.h" Class holds the information
|
|
/// that a breakpoint callback needs to evaluate this stop.
|
|
|
|
/// General Outline:
|
|
/// When we hit a breakpoint we need to package up whatever information is
|
|
/// needed to evaluate breakpoint commands and conditions. This class is the
|
|
/// container of that information.
|
|
|
|
class StoppointCallbackContext {
|
|
public:
|
|
StoppointCallbackContext();
|
|
|
|
StoppointCallbackContext(Event *event, const ExecutionContext &exe_ctx,
|
|
bool synchronously = false);
|
|
|
|
/// Clear the object's state.
|
|
///
|
|
/// Sets the event, process and thread to NULL, and the frame index to an
|
|
/// invalid value.
|
|
void Clear();
|
|
|
|
// Member variables
|
|
Event *event = nullptr; // This is the event, the callback can modify this to
|
|
// indicate the meaning of the breakpoint hit
|
|
ExecutionContextRef
|
|
exe_ctx_ref; // This tells us where we have stopped, what thread.
|
|
bool is_synchronous =
|
|
false; // Is the callback being executed synchronously with the
|
|
// breakpoint,
|
|
// or asynchronously as the event is retrieved?
|
|
};
|
|
|
|
} // namespace lldb_private
|
|
|
|
#endif // LLDB_BREAKPOINT_STOPPOINTCALLBACKCONTEXT_H
|