diff --git a/library/DataIdentity.cpp b/library/DataIdentity.cpp index 8e9467c5b..767724931 100644 --- a/library/DataIdentity.cpp +++ b/library/DataIdentity.cpp @@ -47,7 +47,10 @@ namespace df { STL_OPAQUE_IDENTITY_TRAITS(condition_variable); STL_OPAQUE_IDENTITY_TRAITS(fstream); STL_OPAQUE_IDENTITY_TRAITS(mutex); + STL_OPAQUE_IDENTITY_TRAITS(shared_ptr); STL_OPAQUE_IDENTITY_TRAITS(future); + STL_OPAQUE_IDENTITY_TRAITS(function); + STL_OPAQUE_IDENTITY_TRAITS(optional >); buffer_container_identity buffer_container_identity::base_instance; } diff --git a/library/include/DataIdentity.h b/library/include/DataIdentity.h index 07e85e8a8..4f275b854 100644 --- a/library/include/DataIdentity.h +++ b/library/include/DataIdentity.h @@ -30,6 +30,7 @@ distribution. #include #include #include +#include #include "DataDefs.h" @@ -38,6 +39,10 @@ namespace std { class mutex; }; +namespace df { + class widget; +} + /* * Definitions of DFHack namespace structs used by generated headers. */ @@ -573,6 +578,9 @@ namespace df OPAQUE_IDENTITY_TRAITS(std::fstream); OPAQUE_IDENTITY_TRAITS(std::mutex); OPAQUE_IDENTITY_TRAITS(std::future); + OPAQUE_IDENTITY_TRAITS(std::shared_ptr); + OPAQUE_IDENTITY_TRAITS(std::function); + OPAQUE_IDENTITY_TRAITS(std::optional >); template<> struct DFHACK_EXPORT identity_traits { static bool_identity identity;