kernel_sidecar/jupyter/iopub_content/
stream.rs1use crate::notebook::list_or_string_to_string;
5use bytes::Bytes;
6use serde::{Deserialize, Serialize};
7
8#[derive(Clone, Serialize, PartialEq, Deserialize, Debug)]
9#[serde(rename_all = "lowercase")]
10pub enum StreamName {
11 Stdout,
12 Stderr,
13}
14
15#[allow(dead_code)]
16#[derive(Clone, Serialize, PartialEq, Deserialize, Debug)]
17pub struct Stream {
18 pub name: StreamName,
19 #[serde(deserialize_with = "list_or_string_to_string")]
20 pub text: String,
21}
22
23impl From<Bytes> for Stream {
24 fn from(bytes: Bytes) -> Self {
25 serde_json::from_slice(&bytes).expect("Failed to deserialize Stream")
26 }
27}