ppvm_pauli_word/pattern/from.rs
1// SPDX-FileCopyrightText: 2026 The PPVM Authors
2// SPDX-License-Identifier: Apache-2.0
3
4use super::data::{NotIdentity, PauliPattern};
5use ppvm_traits::char::Pauli;
6
7impl<S: AsRef<str>> From<S> for PauliPattern {
8 fn from(s: S) -> Self {
9 PauliPattern::parse(s.as_ref()).expect("Failed to parse Pauli pattern")
10 }
11}
12
13impl From<NotIdentity> for Pauli {
14 fn from(op: NotIdentity) -> Self {
15 unsafe { std::mem::transmute(op as u8) }
16 }
17}