//------------------------------------------------------------ //! Deallocates data and frees up memory in dataRef described by typeRef VIREO_EXPORT EggShellResult EggShell_DeallocateData(TypeManagerRef tm, const TypeRef typeRef, void* dataRef) { TypeManagerScope scope(tm); if (typeRef == nullptr || !typeRef->IsValid()) { return kEggShellResult_InvalidTypeRef; } if (dataRef == nullptr) { return kEggShellResult_InvalidDataPointer; } NIError error = typeRef->ClearData(dataRef); THREAD_TADM()->Free(dataRef); if (error != kNIError_Success) { return kEggShellResult_UnableToDeallocateData; } return kEggShellResult_Success; }