Navigation
API > API/Runtime > API/Runtime/Core
Iterator for FCbField[View] that can operate on any contiguous range of fields.
The iterator is the current field that the iterator points to and exposes the full interface of FCbField[View]. An iterator that is at the end is equivalent to a field with no value.
The iterator represents a range of fields from the current field to the last field.
| Name | TCbFieldIterator |
| Type | class |
| Header File | /Engine/Source/Runtime/Core/Public/Serialization/CompactBinary.h |
| Include Path | #include "Serialization/CompactBinary.h" |
Syntax
template<typename FieldType>
class TCbFieldIterator : public FieldType
Inheritance Hierarchy
- FieldType → TCbFieldIterator
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
constexpr TCbFieldIterator
(
FieldType InField |
Construct a field range that contains exactly one field. | Serialization/CompactBinary.h | |
constexpr TCbFieldIterator () |
Construct an empty field range. | Serialization/CompactBinary.h | |
constexpr TCbFieldIterator
(
FieldType&& InField, |
Construct a field range from the first field and a pointer to the end of the last field. | Serialization/CompactBinary.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| FieldsEnd | const void * | Pointer to the first byte past the end of the last field. Set to null at the end. | Serialization/CompactBinary.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AppendRangeHash
(
FIoHashBuilder& Builder |
Append the hash of every field in the range. | Serialization/CompactBinary.h | |
TCbFieldIterator begin() |
DO NOT USE DIRECTLY. These functions enable range-based for loop support. | Serialization/CompactBinary.h | |
void CopyRangeTo
(
FArchive& Ar |
Copy the field range into an archive, as if calling CopyTo on every field. | Serialization/CompactBinary.h | |
void CopyRangeTo
(
FMutableMemoryView Buffer |
Copy the field range into a buffer of exactly GetRangeSize() bytes. | Serialization/CompactBinary.h | |
FCbIteratorSentinel end() |
Serialization/CompactBinary.h | ||
bool Equals
(
const TCbFieldIterator< OtherFieldType >& Other |
Serialization/CompactBinary.h | ||
FIoHash GetRangeHash() |
Calculate the hash of every field in the range. | Serialization/CompactBinary.h | |
uint64 GetRangeSize() |
Returns the size of the fields in the range in bytes. | Serialization/CompactBinary.h | |
void IterateRangeAttachments
(
FCbFieldVisitor Visitor |
Invoke the visitor for every attachment in the field range. | Serialization/CompactBinary.h | |
void Reset() |
Reset this to an empty field range. | Serialization/CompactBinary.h | |
bool TryGetRangeView
(
FMemoryView& OutView |
Try to get a view of every field in the range as they would be serialized. | Serialization/CompactBinary.h |
Protected
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static const void * GetFieldsEnd
(
const TCbFieldIterator< OtherFieldType >& It |
Returns the end of the last field, or null for an iterator at the end. | Serialization/CompactBinary.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool operator!=
(
const FCbIteratorSentinel& |
Serialization/CompactBinary.h | ||
bool operator!=
(
const TCbFieldIterator< OtherFieldType >& Other |
Serialization/CompactBinary.h | ||
FieldType & operator*() |
Serialization/CompactBinary.h | ||
TCbFieldIterator & operator++() |
Serialization/CompactBinary.h | ||
TCbFieldIterator operator++
(
int |
Serialization/CompactBinary.h | ||
bool operator==
(
const TCbFieldIterator< OtherFieldType >& Other |
Serialization/CompactBinary.h | ||
bool operator==
(
const FCbIteratorSentinel& |
Serialization/CompactBinary.h | ||
FieldType * operator->() |
Serialization/CompactBinary.h |