LLVM 23.0.0git
NativeEnumInjectedSources.h
Go to the documentation of this file.
1//==- NativeEnumInjectedSources.cpp - Native Injected Source Enumerator --*-==//
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_NATIVEENUMINJECTEDSOURCES_H
10#define LLVM_DEBUGINFO_PDB_NATIVE_NATIVEENUMINJECTEDSOURCES_H
11
15
16namespace llvm {
17namespace pdb {
18
20class PDBFile;
21class PDBStringTable;
22
24 : public IPDBEnumChildren<IPDBInjectedSource> {
25public:
27 const PDBStringTable &Strings);
28
29 uint32_t getChildCount() const override;
30 std::unique_ptr<IPDBInjectedSource>
31 getChildAtIndex(uint32_t Index) const override;
32 std::unique_ptr<IPDBInjectedSource> getNext() override;
33 void reset() override;
34
35private:
36 PDBFile &File;
37 const InjectedSourceStream &Stream;
38 const PDBStringTable &Strings;
40};
41
42} // namespace pdb
43} // namespace llvm
44
45#endif
#define LLVM_ABI
Definition Compiler.h:213
HashTable< SrcHeaderBlockEntry >::const_iterator const_iterator
std::unique_ptr< IPDBInjectedSource > getChildAtIndex(uint32_t Index) const override
NativeEnumInjectedSources(PDBFile &File, const InjectedSourceStream &IJS, const PDBStringTable &Strings)
std::unique_ptr< IPDBInjectedSource > getNext() override
This is an optimization pass for GlobalISel generic memory operations.