Public Member Functions | Private Member Functions | Private Attributes | List of all members
FuzzedDataProvider Class Reference

#include <FuzzedDataProvider.h>

Public Member Functions

bool ConsumeBool ()
 
template<typename T >
std::vector< TConsumeBytes (size_t num_bytes)
 
std::string ConsumeBytesAsString (size_t num_bytes)
 
template<typename T >
std::vector< TConsumeBytesWithTerminator (size_t num_bytes, T terminator=0)
 
template<typename T >
T ConsumeEnum ()
 
template<typename T >
T ConsumeFloatingPoint ()
 
template<typename T >
T ConsumeFloatingPointInRange (T min, T max)
 
template<typename T >
T ConsumeIntegral ()
 
template<typename T >
T ConsumeIntegralInRange (T min, T max)
 
template<typename T >
T ConsumeProbability ()
 
std::string ConsumeRandomLengthString (size_t max_length)
 
template<typename T >
std::vector< TConsumeRemainingBytes ()
 
std::string ConsumeRemainingBytesAsString ()
 
 FuzzedDataProvider (const uint8_t *data, size_t size)
 
template<typename T , size_t size>
T PickValueInArray (const T(&array)[size])
 
template<typename T >
T PickValueInArray (std::initializer_list< const T > list)
 
size_t remaining_bytes ()
 
 ~FuzzedDataProvider ()=default
 

Private Member Functions

void Advance (size_t num_bytes)
 
template<typename T >
std::vector< TConsumeBytes (size_t size, size_t num_bytes_to_consume)
 
template<typename TS , typename TU >
TS ConvertUnsignedToSigned (TU value)
 
 FuzzedDataProvider (const FuzzedDataProvider &)=delete
 
FuzzedDataProvideroperator= (const FuzzedDataProvider &)=delete
 

Private Attributes

const uint8_tdata_ptr_
 
size_t remaining_bytes_
 

Detailed Description

Definition at line 29 of file FuzzedDataProvider.h.

Constructor & Destructor Documentation

◆ FuzzedDataProvider() [1/2]

FuzzedDataProvider::FuzzedDataProvider ( const uint8_t data,
size_t  size 
)
inline

Definition at line 33 of file FuzzedDataProvider.h.

◆ ~FuzzedDataProvider()

FuzzedDataProvider::~FuzzedDataProvider ( )
default

◆ FuzzedDataProvider() [2/2]

FuzzedDataProvider::FuzzedDataProvider ( const FuzzedDataProvider )
privatedelete

Member Function Documentation

◆ Advance()

void FuzzedDataProvider::Advance ( size_t  num_bytes)
inlineprivate

Definition at line 247 of file FuzzedDataProvider.h.

◆ ConsumeBool()

bool FuzzedDataProvider::ConsumeBool ( )
inline

Definition at line 163 of file FuzzedDataProvider.h.

◆ ConsumeBytes() [1/2]

template<typename T >
std::vector<T> FuzzedDataProvider::ConsumeBytes ( size_t  num_bytes)
inline

Definition at line 41 of file FuzzedDataProvider.h.

◆ ConsumeBytes() [2/2]

template<typename T >
std::vector<T> FuzzedDataProvider::ConsumeBytes ( size_t  size,
size_t  num_bytes_to_consume 
)
inlineprivate

Definition at line 256 of file FuzzedDataProvider.h.

◆ ConsumeBytesAsString()

std::string FuzzedDataProvider::ConsumeBytesAsString ( size_t  num_bytes)
inline

Definition at line 63 of file FuzzedDataProvider.h.

◆ ConsumeBytesWithTerminator()

template<typename T >
std::vector<T> FuzzedDataProvider::ConsumeBytesWithTerminator ( size_t  num_bytes,
T  terminator = 0 
)
inline

Definition at line 51 of file FuzzedDataProvider.h.

◆ ConsumeEnum()

template<typename T >
T FuzzedDataProvider::ConsumeEnum ( )
inline

Definition at line 184 of file FuzzedDataProvider.h.

◆ ConsumeFloatingPoint()

template<typename T >
T FuzzedDataProvider::ConsumeFloatingPoint ( )
inline

Definition at line 210 of file FuzzedDataProvider.h.

◆ ConsumeFloatingPointInRange()

template<typename T >
T FuzzedDataProvider::ConsumeFloatingPointInRange ( T  min,
T  max 
)
inline

Definition at line 218 of file FuzzedDataProvider.h.

◆ ConsumeIntegral()

template<typename T >
T FuzzedDataProvider::ConsumeIntegral ( )
inline

Definition at line 157 of file FuzzedDataProvider.h.

◆ ConsumeIntegralInRange()

template<typename T >
T FuzzedDataProvider::ConsumeIntegralInRange ( T  min,
T  max 
)
inline

Definition at line 79 of file FuzzedDataProvider.h.

◆ ConsumeProbability()

template<typename T >
T FuzzedDataProvider::ConsumeProbability ( )
inline

Definition at line 192 of file FuzzedDataProvider.h.

◆ ConsumeRandomLengthString()

std::string FuzzedDataProvider::ConsumeRandomLengthString ( size_t  max_length)
inline

Definition at line 115 of file FuzzedDataProvider.h.

◆ ConsumeRemainingBytes()

template<typename T >
std::vector<T> FuzzedDataProvider::ConsumeRemainingBytes ( )
inline

Definition at line 143 of file FuzzedDataProvider.h.

◆ ConsumeRemainingBytesAsString()

std::string FuzzedDataProvider::ConsumeRemainingBytesAsString ( )
inline

Definition at line 150 of file FuzzedDataProvider.h.

◆ ConvertUnsignedToSigned()

template<typename TS , typename TU >
TS FuzzedDataProvider::ConvertUnsignedToSigned ( TU  value)
inlineprivate

Definition at line 282 of file FuzzedDataProvider.h.

◆ operator=()

FuzzedDataProvider& FuzzedDataProvider::operator= ( const FuzzedDataProvider )
privatedelete

◆ PickValueInArray() [1/2]

template<typename T , size_t size>
T FuzzedDataProvider::PickValueInArray ( const T(&)  array[size])
inline

Definition at line 167 of file FuzzedDataProvider.h.

◆ PickValueInArray() [2/2]

template<typename T >
T FuzzedDataProvider::PickValueInArray ( std::initializer_list< const T list)
inline

Definition at line 173 of file FuzzedDataProvider.h.

◆ remaining_bytes()

size_t FuzzedDataProvider::remaining_bytes ( )
inline

Definition at line 241 of file FuzzedDataProvider.h.

Member Data Documentation

◆ data_ptr_

const uint8_t* FuzzedDataProvider::data_ptr_
private

Definition at line 301 of file FuzzedDataProvider.h.

◆ remaining_bytes_

size_t FuzzedDataProvider::remaining_bytes_
private

Definition at line 302 of file FuzzedDataProvider.h.


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


grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:44