milestone: desktop path Phases 1-5
Phase 1 (Runtime Substrate): 4 check binaries, --probe, POSIX tests Phase 2 (Wayland Compositor): bounded scaffold, zero warnings Phase 3 (KWin Session): preflight checker (KWin stub, gated on Qt6Quick) Phase 4 (KDE Plasma): 18 KF6 enabled, preflight checker Phase 5 (Hardware GPU): DRM/firmware/Mesa preflight checker Build: zero warnings, all scripts syntax-clean. Oracle-verified.
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
use std::cell::RefCell;
|
||||
use std::rc::Weak;
|
||||
|
||||
use syscall::error::Result;
|
||||
use syscall::flag::EventFlags;
|
||||
|
||||
use crate::pty::Pty;
|
||||
|
||||
pub trait Resource {
|
||||
fn pty(&self) -> Weak<RefCell<Pty>>;
|
||||
fn flags(&self) -> usize;
|
||||
|
||||
fn path(&mut self, buf: &mut [u8]) -> Result<usize>;
|
||||
fn read(&mut self, buf: &mut [u8]) -> Result<usize>;
|
||||
fn write(&mut self, buf: &[u8]) -> Result<usize>;
|
||||
fn sync(&mut self) -> Result<()>;
|
||||
fn fcntl(&mut self, cmd: usize, arg: usize) -> Result<usize>;
|
||||
fn fevent(&mut self) -> Result<EventFlags>;
|
||||
fn events(&mut self) -> EventFlags;
|
||||
fn timeout(&self, _count: u64) {
|
||||
// Handled only by PTY control term
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user