Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
38
third-party/vendor/parking_lot/src/util.rs
vendored
Normal file
38
third-party/vendor/parking_lot/src/util.rs
vendored
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
// Copyright 2016 Amanieu d'Antras
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0, <LICENSE-APACHE or
|
||||
// http://apache.org/licenses/LICENSE-2.0> or the MIT license <LICENSE-MIT or
|
||||
// http://opensource.org/licenses/MIT>, at your option. This file may not be
|
||||
// copied, modified, or distributed except according to those terms.
|
||||
|
||||
use std::time::{Duration, Instant};
|
||||
|
||||
// Option::unchecked_unwrap
|
||||
pub trait UncheckedOptionExt<T> {
|
||||
unsafe fn unchecked_unwrap(self) -> T;
|
||||
}
|
||||
|
||||
impl<T> UncheckedOptionExt<T> for Option<T> {
|
||||
#[inline]
|
||||
unsafe fn unchecked_unwrap(self) -> T {
|
||||
match self {
|
||||
Some(x) => x,
|
||||
None => unreachable(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// hint::unreachable_unchecked() in release mode
|
||||
#[inline]
|
||||
unsafe fn unreachable() -> ! {
|
||||
if cfg!(debug_assertions) {
|
||||
unreachable!();
|
||||
} else {
|
||||
core::hint::unreachable_unchecked()
|
||||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn to_deadline(timeout: Duration) -> Option<Instant> {
|
||||
Instant::now().checked_add(timeout)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue