LLVM 22.0.0git
llvm::trailing_objects_internal::TrailingObjectsImpl< Align, BaseTy, TopTrailingObj, PrevTy, NextTy, MoreTys... > Class Template Reference

#include "llvm/Support/TrailingObjects.h"

Inheritance diagram for llvm::trailing_objects_internal::TrailingObjectsImpl< Align, BaseTy, TopTrailingObj, PrevTy, NextTy, MoreTys... >:
[legend]

Static Protected Member Functions

static const NextTy * getTrailingObjectsImpl (const BaseTy *Obj, TrailingObjectsBase::OverloadToken< NextTy >)
static NextTy * getTrailingObjectsImpl (BaseTy *Obj, TrailingObjectsBase::OverloadToken< NextTy >)
static constexpr size_t additionalSizeToAllocImpl (size_t SizeSoFar, size_t Count1, typename ExtractSecondType< MoreTys, size_t >::type... MoreCounts)

Detailed Description

template<int Align, typename BaseTy, typename TopTrailingObj, typename PrevTy, typename NextTy, typename... MoreTys>
class llvm::trailing_objects_internal::TrailingObjectsImpl< Align, BaseTy, TopTrailingObj, PrevTy, NextTy, MoreTys... >

Definition at line 99 of file TrailingObjects.h.

Member Function Documentation

◆ additionalSizeToAllocImpl()

template<int Align, typename BaseTy, typename TopTrailingObj, typename PrevTy, typename NextTy, typename... MoreTys>
constexpr size_t llvm::trailing_objects_internal::TrailingObjectsImpl< Align, BaseTy, TopTrailingObj, PrevTy, NextTy, MoreTys... >::additionalSizeToAllocImpl ( size_t SizeSoFar,
size_t Count1,
typename ExtractSecondType< MoreTys, size_t >::type... MoreCounts )
inlinestaticconstexprprotected

Definition at line 160 of file TrailingObjects.h.

References llvm::alignTo().

◆ getTrailingObjectsImpl() [1/2]

template<int Align, typename BaseTy, typename TopTrailingObj, typename PrevTy, typename NextTy, typename... MoreTys>
NextTy * llvm::trailing_objects_internal::TrailingObjectsImpl< Align, BaseTy, TopTrailingObj, PrevTy, NextTy, MoreTys... >::getTrailingObjectsImpl ( BaseTy * Obj,
TrailingObjectsBase::OverloadToken< NextTy >  )
inlinestaticprotected

Definition at line 144 of file TrailingObjects.h.

References llvm::alignAddr(), llvm::Align::Of(), and Ptr.

◆ getTrailingObjectsImpl() [2/2]

template<int Align, typename BaseTy, typename TopTrailingObj, typename PrevTy, typename NextTy, typename... MoreTys>
const NextTy * llvm::trailing_objects_internal::TrailingObjectsImpl< Align, BaseTy, TopTrailingObj, PrevTy, NextTy, MoreTys... >::getTrailingObjectsImpl ( const BaseTy * Obj,
TrailingObjectsBase::OverloadToken< NextTy >  )
inlinestaticprotected

Definition at line 129 of file TrailingObjects.h.

References llvm::alignAddr(), llvm::Align::Of(), and Ptr.


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