|  | 
            Move-construct a basic_stream_socket from a socket
            of another protocol type.
          
template< typename Protocol1, typename StreamSocketService1> basic_stream_socket( basic_stream_socket< Protocol1, StreamSocketService1 > && other, typename enable_if< is_convertible< Protocol1, Protocol >::value >::type * = 0);
This constructor moves a stream socket from one object to another.
                  The other basic_stream_socket object
                  from which the move will occur.
                
            Following the move, the moved-from object is in the same state as if
            constructed using the basic_stream_socket(io_service&) constructor.