// SPDX-License-Identifier: MPL-2.0 use aster_console::{ AnyConsoleDevice, ConsoleCallback, ConsoleSetFontError, font::BitmapFont, mode::{ConsoleMode, KeyboardMode}, }; /// A dummy console device. /// /// This is used when no framebuffer is available. All operations are no-ops. #[derive(Debug)] pub struct DummyFramebufferConsole; impl AnyConsoleDevice for DummyFramebufferConsole { fn send(&self, _buf: &[u8]) {} fn register_callback(&self, _callback: &'static ConsoleCallback) {} fn set_font(&self, _font: BitmapFont) -> Result<(), ConsoleSetFontError> { Err(ConsoleSetFontError::InappropriateDevice) } fn set_mode(&self, _mode: ConsoleMode) -> bool { false } fn mode(&self) -> Option { None } fn set_keyboard_mode(&self, _mode: KeyboardMode) -> bool { false } fn keyboard_mode(&self) -> Option { None } }