1*bb4ee6a4SAndroid Build Coastguard Worker // Copyright 2020 The ChromiumOS Authors 2*bb4ee6a4SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*bb4ee6a4SAndroid Build Coastguard Worker // found in the LICENSE file. 4*bb4ee6a4SAndroid Build Coastguard Worker 5*bb4ee6a4SAndroid Build Coastguard Worker use base::Event; 6*bb4ee6a4SAndroid Build Coastguard Worker 7*bb4ee6a4SAndroid Build Coastguard Worker use crate::IntoAsync; 8*bb4ee6a4SAndroid Build Coastguard Worker use crate::IoSource; 9*bb4ee6a4SAndroid Build Coastguard Worker 10*bb4ee6a4SAndroid Build Coastguard Worker /// An async version of `base::Event`. 11*bb4ee6a4SAndroid Build Coastguard Worker pub struct EventAsync { 12*bb4ee6a4SAndroid Build Coastguard Worker pub(crate) io_source: IoSource<Event>, 13*bb4ee6a4SAndroid Build Coastguard Worker #[cfg(windows)] 14*bb4ee6a4SAndroid Build Coastguard Worker pub(crate) reset_after_read: bool, 15*bb4ee6a4SAndroid Build Coastguard Worker } 16*bb4ee6a4SAndroid Build Coastguard Worker 17*bb4ee6a4SAndroid Build Coastguard Worker impl EventAsync { get_io_source_ref(&self) -> &IoSource<Event>18*bb4ee6a4SAndroid Build Coastguard Worker pub fn get_io_source_ref(&self) -> &IoSource<Event> { 19*bb4ee6a4SAndroid Build Coastguard Worker &self.io_source 20*bb4ee6a4SAndroid Build Coastguard Worker } 21*bb4ee6a4SAndroid Build Coastguard Worker } 22*bb4ee6a4SAndroid Build Coastguard Worker 23*bb4ee6a4SAndroid Build Coastguard Worker impl IntoAsync for Event {} 24