code: public <T> KxPublisher<T> asKxPublisher(Publisher<T> p) {
          if ( p instanceof KxPublisher)
              return (KxPublisher<T>) p;
          return new KxPublisher<T>() {
              @Override
              public void subscribe(Subscriber<? super T> s) {
                  p.subscribe(s);
              }
  
              @Override @CallerSideMethod
              public KxReactiveStreams getKxStreamsInstance() {
                  return KxReactiveStreams.this;
              }
          };
      }
docs: interop, obtain a RxPublisher from an arbitrary rxstreams publisher.
  
  RxPublisher inherits rxtreams.Publisher and adds some sugar like map, network publish etc. via default methods
  
  @param p
  @param <T>
  @return