//! Notation parsing and formatting for cube moves. use crate::error::Result; use crate::moves::Move; /// Parse a whitespace-separated move string into a vector of moves. pub fn parse_moves(s: &str) -> Result> { crate::scramble::scramble_from_str(s).map_err(Into::into) } /// Format a vector of moves into standard notation. pub fn format_moves(moves: &[Move]) -> String { crate::scramble::scramble_to_str(&moves.to_vec()).unwrap_or_default() } /// Validate that a string is a well-formed move sequence. pub fn validate(s: &str) -> Result<()> { parse_moves(s).map(|_| ()) }