1 //===-- BreakpointPrecondition.h --------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef liblldb_BreakpointPrecondition_h_
10 #define liblldb_BreakpointPrecondition_h_
11 
12 #include "lldb/lldb-enumerations.h"
13 
14 namespace lldb_private {
15 
16 class Args;
17 class Status;
18 class StoppointCallbackContext;
19 class Stream;
20 
21 class BreakpointPrecondition {
22 public:
23   virtual ~BreakpointPrecondition() = default;
24   virtual bool EvaluatePrecondition(StoppointCallbackContext &context);
25   virtual Status ConfigurePrecondition(Args &args);
26   virtual void GetDescription(Stream &stream, lldb::DescriptionLevel level);
27 };
28 } // namespace lldb_private
29 
30 #endif
31