UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VVMNativeStruct.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#if WITH_VERSE_VM || defined(__INTELLISENSE__)
5
6#include "VerseVM/VVMObject.h"
7
8namespace Verse
9{
10enum class ECompares : uint8;
11struct VClass;
12
13template <typename CppStructType>
15
18{
21
22 template <class CppStructType>
23 CppStructType& GetStruct();
24 void* GetStruct();
25
27
29 template <class CppStructType>
31
34
35protected:
36 friend class FInterpreter;
37
38 static std::byte* AllocateCell(FAllocationContext Context, size_t Size, bool bHasDestructor);
39
40 template <class CppStructType>
43 VNativeStruct(FAllocationContext Context);
45
46 VNativeStruct& Duplicate(FAllocationContext Context);
47
48 ECompares EqualImpl(FAllocationContext Context, VCell* Other, const TFunction<void(::Verse::VValue, ::Verse::VValue)>& HandlePlaceholder);
50 VValue MeltImpl(FAllocationContext Context);
51 FOpResult FreezeImpl(FAllocationContext Context, VTask*, FOp* AwaitPC);
52 static void SerializeLayout(FAllocationContext, VNativeStruct*&, FStructuredArchiveVisitor&);
53 void SerializeImpl(FAllocationContext, FStructuredArchiveVisitor&);
54};
55
56} // namespace Verse
57#endif // WITH_VERSE_VM
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
T * New(FMemStackBase &Mem, int32 Count=1, int32 Align=DEFAULT_ALIGNMENT)
Definition MemStack.h:259
uint32 Size
Definition VulkanMemory.cpp:4034
uint8_t uint8
Definition binka_ue_file_header.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition AndroidPlatformMisc.h:14
Definition Class.h:1720
bool SerializeImpl(const UScriptStruct *InSourceEventType, const void *InSourceEventData, FLiveLinkSerializedFrameData &OutSerializedData)
Definition LiveLinkCompression.cpp:126
Definition Archive.h:36