```rust #[norpc::service] trait Pub { fn message_stream(st: Stream<Elem>) -> Stream<Elem>; // or #[stream] fn message_stream() -> Elem; // output only? } ``` yields `fn message_stream(self) -> Pin<Box<dyn futures::stream::Stream<Item = Elem>;`? I don't know. Need some experiments.