#pragma once #include "inc.h" #include "RemoveReference.h" #include "RemoveCV.h" namespace UE4Decay_Private { template struct TDecayNonReference { typedef typename TRemoveCV::Type Type; }; template struct TDecayNonReference { typedef T* Type; }; template struct TDecayNonReference { typedef T* Type; }; template struct TDecayNonReference { typedef RetType(*Type)(Params...); }; } template struct TDecay { typedef typename UE4Decay_Private::TDecayNonReference::Type>::Type Type; };