mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Provide safety check helpers in release builds
debug_assert! uses if cfg!(not(ndebug)) { ... } so the body in a release build is dead code, but it still needs to compile.
This commit is contained in:
parent
4dee8ecdf0
commit
f508a82582
2 changed files with 4 additions and 8 deletions
|
@ -46,7 +46,6 @@ impl<T> DOMRefCell<T> {
|
|||
/// Is the cell mutably borrowed?
|
||||
///
|
||||
/// For safety checks in debug builds only.
|
||||
#[cfg(not(ndebug))]
|
||||
pub fn is_mutably_borrowed(&self) -> bool {
|
||||
self.borrow.get() == WRITING
|
||||
}
|
||||
|
|
|
@ -5,14 +5,10 @@
|
|||
//! Supports dynamic assertions in debug builds about what sort of task is
|
||||
//! running and what state it's in.
|
||||
//!
|
||||
//! In release builds, `get` is not available; calls must be inside
|
||||
//! `debug_assert!` or similar. All of the other functions inline away to
|
||||
//! nothing.
|
||||
//! In release builds, `get` returns 0. All of the other functions inline
|
||||
//! away to nothing.
|
||||
|
||||
pub use self::imp::{initialize, enter, exit};
|
||||
|
||||
#[cfg(not(ndebug))]
|
||||
pub use self::imp::get;
|
||||
pub use self::imp::{initialize, get, enter, exit};
|
||||
|
||||
bitflags! {
|
||||
#[deriving(Show)]
|
||||
|
@ -89,6 +85,7 @@ mod imp {
|
|||
mod imp {
|
||||
use super::TaskState;
|
||||
#[inline(always)] pub fn initialize(_: TaskState) { }
|
||||
#[inline(always)] pub fn get() -> TaskState { TaskState::empty() }
|
||||
#[inline(always)] pub fn enter(_: TaskState) { }
|
||||
#[inline(always)] pub fn exit(_: TaskState) { }
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue