LLVM: include/llvm/ExecutionEngine/Orc/DylibManager.h Source File (original) (raw)

Go to the documentation of this file.

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_EXECUTIONENGINE_ORC_DYLIBMANAGER_H

14#define LLVM_EXECUTIONENGINE_ORC_DYLIBMANAGER_H

15

20

21#include

22#include

23#include

24

26

28

30public:

31

38

40

41

42

43

45

46

47

48

49

50

51

54 std::promise<MSVCPExpected<std::vectortpctypes::LookupResult>> RP;

55 auto RF = RP.get_future();

57 [&RP](auto Result) { RP.set_value(std::move(Result)); });

58 return RF.get();

59 }

60

63

64

65

66

67

68

69

72};

73

74}

75

76#endif

ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...

Tagged union holding either a T or a Error.

Definition DylibManager.h:29

virtual void lookupSymbolsAsync(ArrayRef< LookupRequest > Request, SymbolLookupCompleteFn F)=0

Search for symbols in the target process.

Expected< std::vector< tpctypes::LookupResult > > lookupSymbols(ArrayRef< LookupRequest > Request)

Search for symbols in the target process.

Definition DylibManager.h:53

virtual Expected< tpctypes::DylibHandle > loadDylib(const char *DylibPath)=0

Load the dynamic library at the given path and return a handle to it.

unique_function< void(Expected< std::vector< tpctypes::LookupResult > >)> SymbolLookupCompleteFn

Definition DylibManager.h:61

A set of symbols to look up, each associated with a SymbolLookupFlags value.

unique_function is a type-erasing functor similar to std::function.

ExecutorAddr DylibHandle

A handle used to represent a loaded dylib in the target process.

tpctypes::DylibHandle Handle

Definition DylibManager.h:35

const SymbolLookupSet & Symbols

Definition DylibManager.h:36

LookupRequest(tpctypes::DylibHandle Handle, const SymbolLookupSet &Symbols)

Definition DylibManager.h:33