--- /dev/null
+#ifndef MSP_IO_HANDLE_PRIVATE_H_
+#define MSP_IO_HANDLE_PRIVATE_H_
+
+#ifdef WIN32
+#include <windows.h>
+#endif
+#include "handle.h"
+
+namespace Msp {
+namespace IO {
+
+struct Handle::Private
+{
+#ifdef WIN32
+ typedef HANDLE H;
+#else
+ typedef int H;
+#endif
+
+ H handle;
+
+ Private();
+
+ Private &operator=(H);
+ operator H() const { return handle; }
+};
+
+} // namespace IO
+} // namespace Msp
+
+#endif