claude-code-agent-sdk 0.1.39

Rust SDK for Claude Code CLI with bidirectional streaming, hooks, custom tools, and plugin support
Documentation
//! Message parser for converting JSON to typed messages

use crate::errors::{MessageParseError, Result};
use crate::types::messages::Message;

/// Message parser for CLI output
pub struct MessageParser;

impl MessageParser {
    /// Parse a JSON value into a Message
    pub fn parse(data: serde_json::Value) -> Result<Message> {
        serde_json::from_value(data).map_err(|e| {
            MessageParseError::new(
                format!("Failed to parse message: {}", e),
                None, // 不包含原始数据以避免克隆开销
            )
            .into()
        })
    }
}