From what I found, It’s a protocol conformance for ObservableConvertibleType. To get a better understanding, look at the ObservableType protocol and what objects conform to it (namely things like subjects, etc.). The only guarantee is that the object will return an Observable in response to a call to asObservable. This guarantee allows you to use all types that can provide an Observable together in the same operator chain.
I’m not sure if that helps, but I hope it does
In essence this is similar to Strings conformance to CustomStringConvertible.