+ if( Object->ReferenceCount == 0 ) {
+ switch( (enum eSpiderScript_DataTypes) Object->Type )
+ {
+ case SS_DATATYPE_OBJECT:
+ Object->Object->Type->Destructor( Object->Object );
+ break;
+ case SS_DATATYPE_OPAQUE:
+ Object->Opaque.Destroy( Object->Opaque.Data );
+ break;
+ default:
+ break;
+ }
+ free(Object);
+ }