#![doc = include_str!("../README.md")]
#![deny(unreachable_patterns)]
#![allow(clippy::exhaustive_enums)]
#![warn(clippy::use_self)]
#![warn(clippy::must_use_candidate)]
#![warn(clippy::missing_const_for_fn)]
#![warn(clippy::missing_assert_message)]
#![warn(clippy::pattern_type_mismatch)]
#![allow(clippy::pub_with_shorthand)]
#![warn(clippy::pub_without_shorthand)]
#![warn(clippy::option_map_or_none)]
#![warn(clippy::bind_instead_of_map)]
#![warn(clippy::cognitive_complexity)] #![warn(clippy::alloc_instead_of_core)]
#![warn(clippy::ref_option)]
#![warn(clippy::manual_let_else)]
#![allow(clippy::manual_non_exhaustive)]
#![allow(clippy::pattern_type_mismatch)]
#![cfg_attr(not(feature = "std"), no_std)]
#![cfg_attr(docsrs, feature(doc_cfg))]
#[cfg(feature = "pyo3")]
use pyo3::prelude::*;
mod generated;
pub mod abi;
pub mod access_type;
pub mod access_type_descriptor;
pub mod display_flags;
mod encoded_field_mask;
pub mod instr;
pub mod instr_suffixes;
pub mod isa;
pub mod opcodes;
pub mod operands;
pub mod register_descriptors;
pub mod registers;
pub mod registers_meta;
pub mod vram;
#[cfg(feature = "encoder")]
#[cfg_attr(docsrs, doc(cfg(feature = "encoder")))]
pub mod encoder;
mod utils;
pub use display_flags::InstructionDisplayFlags;
pub use instr::{Instruction, InstructionFlags};
pub use isa::{IsaExtension, IsaVersion};
pub use vram::Vram;
#[cfg(feature = "pyo3")]
#[pymodule]
fn rabbitizer(m: &Bound<'_, PyModule>) -> PyResult<()> {
m.add_class::<display_flags::InstructionDisplayFlags>()?;
m.add_class::<instr::InstructionFlags>()?;
m.add_class::<isa::IsaVersion>()?;
m.add_class::<isa::IsaExtension>()?;
m.add_class::<vram::Vram>()?;
Ok(())
}