#define MSP_IO_HANDLE_H_
#include <cstddef>
+#include <msp/core/mspcore_api.h>
namespace Msp {
namespace IO {
-class Handle
+class MSPCORE_API Handle
{
public:
struct Private;
private:
- Private *priv;
+ Private *priv = nullptr;
public:
Handle();
Private &operator*() { return *priv; }
const Private &operator*() const { return *priv; }
- /** This is effectively a boolean conversion, but avoids accidental
- conversion to OS native handles. Unix-based systems use int and win32 uses
- void *; const void * is not implicitly convertible to either. */
- operator const void *() const;
+ explicit operator bool() const;
};