Pass structs by value, not by reference, in EngineAPI. This simplifies call-layout through EngineAPI

This commit is contained in:
Lukas Joergensen 2018-04-21 09:23:38 +02:00
parent 780e1dc73f
commit 2fe623b761

View file

@ -236,16 +236,16 @@ template< typename T >
struct _EngineStructTypeTraits struct _EngineStructTypeTraits
{ {
typedef T Type; typedef T Type;
typedef const T& ValueType; typedef const T ValueType;
typedef void SuperType; typedef void SuperType;
// Structs get passed in as pointers and passed out as full copies. // Structs get passed in as pointers and passed out as full copies.
typedef T* ArgumentValueType; typedef T ArgumentValueType;
typedef T ReturnValueType; typedef T ReturnValueType;
typedef T DefaultArgumentValueStoreType; typedef T DefaultArgumentValueStoreType;
typedef ReturnValueType ReturnValue; typedef ReturnValueType ReturnValue;
static ValueType ArgumentToValue( ArgumentValueType val ) { return *val; } static ValueType ArgumentToValue( ArgumentValueType val ) { return val; }
static const EngineTypeInfo* const TYPEINFO; static const EngineTypeInfo* const TYPEINFO;
}; };