kernel_sidecar/jupyter/iopub_content/
status.rs

1/*
2Ref: https://jupyter-client.readthedocs.io/en/latest/messaging.html#kernel-info
3*/
4use bytes::Bytes;
5use serde::{Deserialize, Serialize};
6
7#[derive(Serialize, Deserialize, Debug, PartialEq)]
8#[serde(rename_all = "snake_case")]
9pub enum KernelStatus {
10    Busy,
11    Idle,
12    Starting,
13}
14
15#[derive(Serialize, Deserialize, Debug)]
16pub struct Status {
17    pub execution_state: KernelStatus,
18}
19
20impl From<Bytes> for Status {
21    fn from(bytes: Bytes) -> Self {
22        serde_json::from_slice(&bytes).unwrap()
23    }
24}