Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:42:49

0001 //===-- ScriptedStopHookInterface.h -----------------------------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 
0009 #ifndef LLDB_INTERPRETER_INTERFACES_SCRIPTEDSTOPHOOKINTERFACE_H
0010 #define LLDB_INTERPRETER_INTERFACES_SCRIPTEDSTOPHOOKINTERFACE_H
0011 
0012 #include "lldb/lldb-private.h"
0013 
0014 #include "ScriptedInterface.h"
0015 
0016 namespace lldb_private {
0017 class ScriptedStopHookInterface : public ScriptedInterface {
0018 public:
0019   virtual llvm::Expected<StructuredData::GenericSP>
0020   CreatePluginObject(llvm::StringRef class_name, lldb::TargetSP target_sp,
0021                      const StructuredDataImpl &args_sp) = 0;
0022 
0023   /// "handle_stop" will return a bool with the meaning "should_stop"...
0024   /// If nothing is returned, we'll assume we are going to stop.
0025   /// Also any errors should return true, since we should stop on error.
0026   virtual llvm::Expected<bool> HandleStop(ExecutionContext &exe_ctx,
0027                                           lldb::StreamSP &output_sp) {
0028     return true;
0029   }
0030 };
0031 } // namespace lldb_private
0032 
0033 #endif // LLDB_INTERPRETER_INTERFACES_SCRIPTEDSTOPHOOKINTERFACE_H