LLVM
22.0.0git
include
llvm
DebugInfo
PDB
Native
NativeEnumSymbols.h
Go to the documentation of this file.
1
//==- NativeEnumSymbols.h - Native Symbols Enumerator impl -------*- 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 LLVM_DEBUGINFO_PDB_NATIVE_NATIVEENUMSYMBOLS_H
10
#define LLVM_DEBUGINFO_PDB_NATIVE_NATIVEENUMSYMBOLS_H
11
12
#include "
llvm/DebugInfo/PDB/IPDBEnumChildren.h
"
13
#include "
llvm/DebugInfo/PDB/PDBSymbol.h
"
14
#include "
llvm/DebugInfo/PDB/PDBTypes.h
"
15
16
#include <vector>
17
18
namespace
llvm
{
19
namespace
pdb
{
20
21
class
NativeSession
;
22
23
class
NativeEnumSymbols
:
public
IPDBEnumChildren
<PDBSymbol> {
24
public
:
25
NativeEnumSymbols
(
NativeSession
&Session, std::vector<SymIndexId> Symbols);
26
27
uint32_t
getChildCount
()
const override
;
28
std::unique_ptr<PDBSymbol>
getChildAtIndex
(
uint32_t
Index)
const override
;
29
std::unique_ptr<PDBSymbol>
getNext
()
override
;
30
void
reset
()
override
;
31
32
private
:
33
std::vector<SymIndexId> Symbols;
34
uint32_t
Index;
35
NativeSession
&Session;
36
};
37
38
}
// namespace pdb
39
}
// namespace llvm
40
41
#endif
IPDBEnumChildren.h
PDBSymbol.h
PDBTypes.h
llvm::pdb::IPDBEnumChildren
Definition
IPDBEnumChildren.h:20
llvm::pdb::NativeEnumSymbols::getNext
std::unique_ptr< PDBSymbol > getNext() override
Definition
NativeEnumSymbols.cpp:35
llvm::pdb::NativeEnumSymbols::getChildCount
uint32_t getChildCount() const override
Definition
NativeEnumSymbols.cpp:23
llvm::pdb::NativeEnumSymbols::NativeEnumSymbols
NativeEnumSymbols(NativeSession &Session, std::vector< SymIndexId > Symbols)
Definition
NativeEnumSymbols.cpp:19
llvm::pdb::NativeEnumSymbols::getChildAtIndex
std::unique_ptr< PDBSymbol > getChildAtIndex(uint32_t Index) const override
Definition
NativeEnumSymbols.cpp:28
llvm::pdb::NativeEnumSymbols::reset
void reset() override
Definition
NativeEnumSymbols.cpp:39
llvm::pdb::NativeSession
Definition
NativeSession.h:33
uint32_t
llvm::pdb
Definition
LVCodeViewReader.h:44
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition
AddressRanges.h:18
Generated on
for LLVM by
1.14.0