// SPDX-FileCopyrightText: 2021 Jorrit Rouwe // SPDX-License-Identifier: MIT #pragma once #include namespace JPH { /// Helper functions to get the underlying RTTI type of a type (so e.g. vector will return sometype) template RTTI *GetPrimitiveTypeOfType(T *) { return GetRTTIOfType((T *)nullptr); } template RTTI *GetPrimitiveTypeOfType(T **) { return GetPrimitiveTypeOfType((T *)nullptr); } template RTTI *GetPrimitiveTypeOfType(Ref *) { return GetPrimitiveTypeOfType((T *)nullptr); } template RTTI *GetPrimitiveTypeOfType(RefConst *) { return GetPrimitiveTypeOfType((T *)nullptr); } template RTTI *GetPrimitiveTypeOfType(vector *) { return GetPrimitiveTypeOfType((T *)nullptr); } template RTTI *GetPrimitiveTypeOfType(StaticArray *) { return GetPrimitiveTypeOfType((T *)nullptr); } template RTTI *GetPrimitiveTypeOfType(T (*)[N]) { return GetPrimitiveTypeOfType((T *)nullptr); } } // JPH