LLDB
mainline
llvm-project
lldb
include
lldb
Breakpoint
BreakpointIDList.h
Go to the documentation of this file.
1
//===-- BreakpointIDList.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 LLDB_BREAKPOINT_BREAKPOINTIDLIST_H
10
#define LLDB_BREAKPOINT_BREAKPOINTIDLIST_H
11
12
#include <utility>
13
#include <vector>
14
15
#include "
lldb/Breakpoint/BreakpointID.h
"
16
#include "
lldb/Breakpoint/BreakpointName.h
"
17
#include "
lldb/lldb-enumerations.h
"
18
#include "
lldb/lldb-private.h
"
19
20
#include "llvm/Support/Error.h"
21
22
namespace
lldb_private
{
23
24
// class BreakpointIDList
25
26
class
BreakpointIDList
{
27
public
:
28
// TODO: Convert this class to StringRef.
29
typedef
std::vector<BreakpointID>
BreakpointIDArray
;
30
31
BreakpointIDList
();
32
33
virtual
~BreakpointIDList
();
34
35
size_t
GetSize
()
const
;
36
37
BreakpointID
GetBreakpointIDAtIndex
(
size_t
index)
const
;
38
39
bool
RemoveBreakpointIDAtIndex
(
size_t
index);
40
41
void
Clear
();
42
43
bool
AddBreakpointID
(
BreakpointID
bp_id);
44
45
bool
Contains
(
BreakpointID
bp_id)
const
;
46
47
// Returns a pair consisting of the beginning and end of a breakpoint
48
// ID range expression. If the input string is not a valid specification,
49
// returns an empty pair.
50
static
std::pair<llvm::StringRef, llvm::StringRef>
51
SplitIDRangeExpression
(llvm::StringRef in_string);
52
53
static
llvm::Error
FindAndReplaceIDRanges
(
54
Args
&old_args,
ExecutionContext
&exe_ctx,
bool
allow_locations,
55
BreakpointName::Permissions ::PermissionKinds purpose,
Args
&new_args);
56
57
private
:
58
BreakpointIDArray
m_breakpoint_ids
;
59
60
BreakpointIDList
(
const
BreakpointIDList
&) =
delete
;
61
const
BreakpointIDList
&
operator=
(
const
BreakpointIDList
&) =
delete
;
62
};
63
64
}
// namespace lldb_private
65
66
#endif
// LLDB_BREAKPOINT_BREAKPOINTIDLIST_H
BreakpointID.h
BreakpointName.h
lldb_private::Args
A command line argument class.
Definition
Args.h:33
lldb_private::BreakpointIDList::m_breakpoint_ids
BreakpointIDArray m_breakpoint_ids
Definition
BreakpointIDList.h:58
lldb_private::BreakpointIDList::BreakpointIDArray
std::vector< BreakpointID > BreakpointIDArray
Definition
BreakpointIDList.h:29
lldb_private::BreakpointIDList::BreakpointIDList
BreakpointIDList()
Definition
BreakpointIDList.cpp:30
lldb_private::BreakpointIDList::Clear
void Clear()
Definition
BreakpointIDList.cpp:49
lldb_private::BreakpointIDList::operator=
const BreakpointIDList & operator=(const BreakpointIDList &)=delete
lldb_private::BreakpointIDList::BreakpointIDList
BreakpointIDList(const BreakpointIDList &)=delete
lldb_private::BreakpointIDList::~BreakpointIDList
virtual ~BreakpointIDList()
lldb_private::BreakpointIDList::AddBreakpointID
bool AddBreakpointID(BreakpointID bp_id)
Definition
BreakpointIDList.cpp:51
lldb_private::BreakpointIDList::RemoveBreakpointIDAtIndex
bool RemoveBreakpointIDAtIndex(size_t index)
Definition
BreakpointIDList.cpp:41
lldb_private::BreakpointIDList::SplitIDRangeExpression
static std::pair< llvm::StringRef, llvm::StringRef > SplitIDRangeExpression(llvm::StringRef in_string)
Definition
BreakpointIDList.cpp:316
lldb_private::BreakpointIDList::FindAndReplaceIDRanges
static llvm::Error FindAndReplaceIDRanges(Args &old_args, ExecutionContext &exe_ctx, bool allow_locations, BreakpointName::Permissions ::PermissionKinds purpose, Args &new_args)
Definition
BreakpointIDList.cpp:85
lldb_private::BreakpointIDList::GetBreakpointIDAtIndex
BreakpointID GetBreakpointIDAtIndex(size_t index) const
Definition
BreakpointIDList.cpp:36
lldb_private::BreakpointIDList::GetSize
size_t GetSize() const
Definition
BreakpointIDList.cpp:34
lldb_private::BreakpointID
Definition
BreakpointID.h:22
lldb_private::ExecutionContext
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
Definition
ExecutionContext.h:294
lldb-enumerations.h
lldb-private.h
lldb_private
A class that represents a running process on the host machine.
Definition
SBAddressRange.h:14
lldb_private::NameMatch::Contains
@ Contains
Definition
NameMatches.h:18
Generated on
for LLDB by
1.14.0