LLVM 22.0.0git
llvm::detail::BCRecordCoding< ElementTy > Class Template Reference

Helper class for dealing with a scalar element at the end of a record. More...

#include "llvm/Bitcode/BitcodeConvenience.h"

Inheritance diagram for llvm::detail::BCRecordCoding< ElementTy >:
[legend]

Static Public Member Functions

template<typename BufferTy, typename DataTy>
static void emit (llvm::BitstreamWriter &Stream, BufferTy &buffer, unsigned code, const DataTy &data)
template<typename T, typename DataTy>
static void read (ArrayRef< T > buffer, DataTy &data)
template<typename T>
static void read (ArrayRef< T > buffer, std::nullopt_t)
template<typename T>
static void read (ArrayRef< T > buffer)=delete

Detailed Description

template<typename ElementTy>
class llvm::detail::BCRecordCoding< ElementTy >

Helper class for dealing with a scalar element at the end of a record.

This has a separate implementation because up until now we've only been building the record (into a data buffer), and now we need to hand it off to the BitstreamWriter to be emitted.

See also
BCRecordLayout

Definition at line 223 of file BitcodeConvenience.h.

Member Function Documentation

◆ emit()

template<typename ElementTy>
template<typename BufferTy, typename DataTy>
void llvm::detail::BCRecordCoding< ElementTy >::emit ( llvm::BitstreamWriter & Stream,
BufferTy & buffer,
unsigned code,
const DataTy & data )
inlinestatic

Definition at line 226 of file BitcodeConvenience.h.

References data, and llvm::BitstreamWriter::EmitRecordWithAbbrev().

◆ read() [1/3]

template<typename ElementTy>
template<typename T>
void llvm::detail::BCRecordCoding< ElementTy >::read ( ArrayRef< T > buffer)
staticdelete

◆ read() [2/3]

template<typename ElementTy>
template<typename T, typename DataTy>
void llvm::detail::BCRecordCoding< ElementTy >::read ( ArrayRef< T > buffer,
DataTy & data )
inlinestatic

◆ read() [3/3]

template<typename ElementTy>
template<typename T>
void llvm::detail::BCRecordCoding< ElementTy >::read ( ArrayRef< T > buffer,
std::nullopt_t  )
inlinestatic

Definition at line 241 of file BitcodeConvenience.h.

References assert(), and llvm::ArrayRef< T >::size().


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