LLVM  8.0.1
List of all members
llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)> Struct Template Reference

Provide a default specialization for function pointers that assumes 4-byte alignment. More...

#include "llvm/Support/PointerLikeTypeTraits.h"

Inheritance diagram for llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)>:
Inheritance graph
[legend]
Collaboration diagram for llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)>:
Collaboration graph
[legend]

Additional Inherited Members

- Public Types inherited from llvm::FunctionPointerLikeTypeTraits< 4, ReturnT(*)(ParamTs...)>
enum  
 
- Static Public Member Functions inherited from llvm::FunctionPointerLikeTypeTraits< 4, ReturnT(*)(ParamTs...)>
static void * getAsVoidPointer (ReturnT(*)(ParamTs...) P)
 
static ReturnT(*)(ParamTs...) getFromVoidPointer (void *P)
 

Detailed Description

template<typename ReturnT, typename... ParamTs>
struct llvm::PointerLikeTypeTraits< ReturnT(*)(ParamTs...)>

Provide a default specialization for function pointers that assumes 4-byte alignment.

We assume here that functions used with this are always at least 4-byte aligned. This means that, for example, thumb functions won't work or systems with weird unaligned function pointers won't work. But all practical systems we support satisfy this requirement.

Definition at line 145 of file PointerLikeTypeTraits.h.


The documentation for this struct was generated from the following file: