class FunctionCallee

Declaration

class FunctionCallee { /* full declaration omitted */ };

Description

A handy container for a FunctionType+Callee-pointer pair, which can be passed around as a single entity. This assists in replacing the use of PointerType::getElementType() to access the function's type, since that's slated for removal as part of the [opaque pointer types] project.

Declared at: llvm/include/llvm/IR/DerivedTypes.h:165

Member Variables

private llvm::FunctionType* FnTy = nullptr
private llvm::Value* Callee = nullptr

Method Overview

Methods

FunctionCallee(llvm::FunctionType* FnTy,
               llvm::Value* Callee)

Declared at: llvm/include/llvm/IR/DerivedTypes.h:173

Parameters

llvm::FunctionType* FnTy
llvm::Value* Callee

FunctionCallee(std::nullptr_t)

Declared at: llvm/include/llvm/IR/DerivedTypes.h:178

Parameters

std::nullptr_t

FunctionCallee()

Declared at: llvm/include/llvm/IR/DerivedTypes.h:180

template <
    typename T,
    typename U = decltype(&T::getFunctionType)>
FunctionCallee(T* Fn)

Declared at: llvm/include/llvm/IR/DerivedTypes.h:170

Templates

T
U = decltype(& T::getFunctionType)

Parameters

T* Fn

llvm::Value* getCallee()

Declared at: llvm/include/llvm/IR/DerivedTypes.h:184

llvm::FunctionType* getFunctionType()

Declared at: llvm/include/llvm/IR/DerivedTypes.h:182

bool operator bool()

Declared at: llvm/include/llvm/IR/DerivedTypes.h:186