Representations and parsing logic for SQLSTATE
return codes.
Parsing return codes according to the SQL standard: ```rust use sqlstate::standard::{ class::{DataException::DivisionByZero, Warning::PrivilegeNotGranted}, SqlState, };
asserteq!("00000".parse::
// Unknown codes are represented as Other
assert_eq!("XX001".parse::
Examining the pieces of a return code: ```rust use sqlstate::standard::{class::Warning::PrivilegeNotGranted, SqlState};
let success = SqlState::Success(None); let warning = SqlState::Warning(Some(PrivilegeNotGranted)); asserteq!((success.class(), success.subclass()), ("00", None)); asserteq!((warning.class(), warning.subclass()), ("01", Some("007"))); ```
Parsing return codes specific to PostgreSQL: ```rust use sqlstate::{ postgres::{ class::{ DataException::InvalidJsonText, InternalError::DataCorrupted, OperatorIntervention::CrashShutdown, }, SqlState::*, }, standard, PostgresSqlState, };
asserteq!("22032".parse::
// Can also fall back to standard codes
assert_eq!("00000".parse::
postgres
: Enables PostgreSQL-specific types.