LLDB  mainline
SBFileSpecList.h
Go to the documentation of this file.
1 //===-- SBFileSpecList.h --------------------------------------------*- C++
2 //-*-===//
3 //
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef LLDB_SBFileSpecList_h_
11 #define LLDB_SBFileSpecList_h_
12 
13 #include "lldb/API/SBDefines.h"
14 
15 namespace lldb {
16 
18 public:
20 
22 
23  ~SBFileSpecList();
24 
25  const SBFileSpecList &operator=(const lldb::SBFileSpecList &rhs);
26 
27  uint32_t GetSize() const;
28 
29  bool GetDescription(SBStream &description) const;
30 
31  void Append(const SBFileSpec &sb_file);
32 
33  bool AppendIfUnique(const SBFileSpec &sb_file);
34 
35  void Clear();
36 
37  uint32_t FindFileIndex(uint32_t idx, const SBFileSpec &sb_file, bool full);
38 
39  const SBFileSpec GetFileSpecAtIndex(uint32_t idx) const;
40 
41 private:
42  friend class SBTarget;
43 
44  const lldb_private::FileSpecList *operator->() const;
45 
46  const lldb_private::FileSpecList *get() const;
47 
48  const lldb_private::FileSpecList &operator*() const;
49 
50  const lldb_private::FileSpecList &ref() const;
51 
52  std::unique_ptr<lldb_private::FileSpecList> m_opaque_up;
53 };
54 
55 } // namespace lldb
56 
57 #endif // LLDB_SBFileSpecList_h_
const Scalar operator*(const Scalar &lhs, const Scalar &rhs)
Definition: Scalar.cpp:2161
class LLDB_API SBFileSpecList
Definition: SBDefines.h:45
#define LLDB_API
Definition: lldb-defines.h:23
Definition: SBAddress.h:15