xref: /qemu/rust/qemu-api/src/chardev.rs (revision a22bd55ffd889f3027c3158d0014c76f204c69dd)
1*a22bd55fSPaolo Bonzini // Copyright 2024 Red Hat, Inc.
2*a22bd55fSPaolo Bonzini // Author(s): Paolo Bonzini <pbonzini@redhat.com>
3*a22bd55fSPaolo Bonzini // SPDX-License-Identifier: GPL-2.0-or-later
4*a22bd55fSPaolo Bonzini 
5*a22bd55fSPaolo Bonzini //! Bindings for character devices
6*a22bd55fSPaolo Bonzini 
7*a22bd55fSPaolo Bonzini use std::ffi::CStr;
8*a22bd55fSPaolo Bonzini 
9*a22bd55fSPaolo Bonzini use crate::{bindings, prelude::*};
10*a22bd55fSPaolo Bonzini 
11*a22bd55fSPaolo Bonzini pub type Chardev = bindings::Chardev;
12*a22bd55fSPaolo Bonzini pub type ChardevClass = bindings::ChardevClass;
13*a22bd55fSPaolo Bonzini 
14*a22bd55fSPaolo Bonzini unsafe impl ObjectType for Chardev {
15*a22bd55fSPaolo Bonzini     type Class = ChardevClass;
16*a22bd55fSPaolo Bonzini     const TYPE_NAME: &'static CStr =
17*a22bd55fSPaolo Bonzini         unsafe { CStr::from_bytes_with_nul_unchecked(bindings::TYPE_CHARDEV) };
18*a22bd55fSPaolo Bonzini }
19*a22bd55fSPaolo Bonzini qom_isa!(Chardev: Object);
20