1cfca06d7SDimitry Andric //===-- SBReproducer.cpp --------------------------------------------------===//
25f29bb8aSDimitry Andric //
35f29bb8aSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
45f29bb8aSDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
55f29bb8aSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
65f29bb8aSDimitry Andric //
75f29bb8aSDimitry Andric //===----------------------------------------------------------------------===//
85f29bb8aSDimitry Andric
96f8fc217SDimitry Andric #include "lldb/API/SBReproducer.h"
105f29bb8aSDimitry Andric #include "lldb/API/LLDB.h"
115f29bb8aSDimitry Andric #include "lldb/API/SBAddress.h"
125f29bb8aSDimitry Andric #include "lldb/API/SBAttachInfo.h"
135f29bb8aSDimitry Andric #include "lldb/API/SBBlock.h"
145f29bb8aSDimitry Andric #include "lldb/API/SBBreakpoint.h"
155f29bb8aSDimitry Andric #include "lldb/API/SBCommandInterpreter.h"
16cfca06d7SDimitry Andric #include "lldb/API/SBCommandInterpreterRunOptions.h"
175f29bb8aSDimitry Andric #include "lldb/API/SBData.h"
185f29bb8aSDimitry Andric #include "lldb/API/SBDebugger.h"
195f29bb8aSDimitry Andric #include "lldb/API/SBDeclaration.h"
205f29bb8aSDimitry Andric #include "lldb/API/SBError.h"
215f29bb8aSDimitry Andric #include "lldb/API/SBFileSpec.h"
225f29bb8aSDimitry Andric #include "lldb/API/SBHostOS.h"
235f29bb8aSDimitry Andric #include "lldb/Host/FileSystem.h"
246f8fc217SDimitry Andric #include "lldb/Utility/Instrumentation.h"
2577fc4c14SDimitry Andric #include "lldb/Version/Version.h"
265f29bb8aSDimitry Andric
275f29bb8aSDimitry Andric using namespace lldb;
285f29bb8aSDimitry Andric using namespace lldb_private;
295f29bb8aSDimitry Andric using namespace lldb_private::repro;
305f29bb8aSDimitry Andric
SBReplayOptions()31e3b55780SDimitry Andric SBReplayOptions::SBReplayOptions() {}
32b60736ecSDimitry Andric
SBReplayOptions(const SBReplayOptions & rhs)33e3b55780SDimitry Andric SBReplayOptions::SBReplayOptions(const SBReplayOptions &rhs) {}
34b60736ecSDimitry Andric
35b60736ecSDimitry Andric SBReplayOptions::~SBReplayOptions() = default;
36b60736ecSDimitry Andric
operator =(const SBReplayOptions & rhs)37b60736ecSDimitry Andric SBReplayOptions &SBReplayOptions::operator=(const SBReplayOptions &rhs) {
386f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(this, rhs)
39b60736ecSDimitry Andric return *this;
40b60736ecSDimitry Andric }
41b60736ecSDimitry Andric
SetVerify(bool verify)426f8fc217SDimitry Andric void SBReplayOptions::SetVerify(bool verify) {
43e3b55780SDimitry Andric LLDB_INSTRUMENT_VA(this, verify);
446f8fc217SDimitry Andric }
45b60736ecSDimitry Andric
GetVerify() const466f8fc217SDimitry Andric bool SBReplayOptions::GetVerify() const {
47e3b55780SDimitry Andric LLDB_INSTRUMENT_VA(this);
48e3b55780SDimitry Andric return false;
496f8fc217SDimitry Andric }
50b60736ecSDimitry Andric
SetCheckVersion(bool check)51b60736ecSDimitry Andric void SBReplayOptions::SetCheckVersion(bool check) {
52e3b55780SDimitry Andric LLDB_INSTRUMENT_VA(this, check);
53b60736ecSDimitry Andric }
54b60736ecSDimitry Andric
GetCheckVersion() const55b60736ecSDimitry Andric bool SBReplayOptions::GetCheckVersion() const {
56e3b55780SDimitry Andric LLDB_INSTRUMENT_VA(this);
57e3b55780SDimitry Andric return false;
58b60736ecSDimitry Andric }
59b60736ecSDimitry Andric
Capture()605f29bb8aSDimitry Andric const char *SBReproducer::Capture() {
616f8fc217SDimitry Andric LLDB_INSTRUMENT()
62e3b55780SDimitry Andric return "Reproducer capture has been removed";
635f29bb8aSDimitry Andric }
645f29bb8aSDimitry Andric
Capture(const char * path)655f29bb8aSDimitry Andric const char *SBReproducer::Capture(const char *path) {
666f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path)
67e3b55780SDimitry Andric return "Reproducer capture has been removed";
68cfca06d7SDimitry Andric }
69cfca06d7SDimitry Andric
PassiveReplay(const char * path)70cfca06d7SDimitry Andric const char *SBReproducer::PassiveReplay(const char *path) {
716f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path)
7277fc4c14SDimitry Andric return "Reproducer replay has been removed";
735f29bb8aSDimitry Andric }
745f29bb8aSDimitry Andric
Replay(const char * path)755f29bb8aSDimitry Andric const char *SBReproducer::Replay(const char *path) {
766f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path)
7777fc4c14SDimitry Andric return "Reproducer replay has been removed";
78706b4fc4SDimitry Andric }
79706b4fc4SDimitry Andric
Replay(const char * path,bool skip_version_check)80706b4fc4SDimitry Andric const char *SBReproducer::Replay(const char *path, bool skip_version_check) {
816f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path, skip_version_check)
82e3b55780SDimitry Andric return "Reproducer replay has been removed";
83b60736ecSDimitry Andric }
84b60736ecSDimitry Andric
Replay(const char * path,const SBReplayOptions & options)85b60736ecSDimitry Andric const char *SBReproducer::Replay(const char *path,
86b60736ecSDimitry Andric const SBReplayOptions &options) {
876f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path, options)
88e3b55780SDimitry Andric return "Reproducer replay has been removed";
895f29bb8aSDimitry Andric }
905f29bb8aSDimitry Andric
Finalize(const char * path)91b60736ecSDimitry Andric const char *SBReproducer::Finalize(const char *path) {
926f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path)
93145449b1SDimitry Andric return "Reproducer finalize has been removed";
94b60736ecSDimitry Andric }
95b60736ecSDimitry Andric
Generate()96706b4fc4SDimitry Andric bool SBReproducer::Generate() {
976f8fc217SDimitry Andric LLDB_INSTRUMENT()
98706b4fc4SDimitry Andric return false;
99706b4fc4SDimitry Andric }
100706b4fc4SDimitry Andric
SetAutoGenerate(bool b)101cfca06d7SDimitry Andric bool SBReproducer::SetAutoGenerate(bool b) {
1026f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(b)
103cfca06d7SDimitry Andric return false;
104cfca06d7SDimitry Andric }
105cfca06d7SDimitry Andric
GetPath()106706b4fc4SDimitry Andric const char *SBReproducer::GetPath() {
1076f8fc217SDimitry Andric LLDB_INSTRUMENT()
108e3b55780SDimitry Andric return "Reproducer GetPath has been removed";
109706b4fc4SDimitry Andric }
110706b4fc4SDimitry Andric
SetWorkingDirectory(const char * path)111cfca06d7SDimitry Andric void SBReproducer::SetWorkingDirectory(const char *path) {
1126f8fc217SDimitry Andric LLDB_INSTRUMENT_VA(path)
113cfca06d7SDimitry Andric }
114