mirror of
https://github.com/servo/servo.git
synced 2025-06-29 03:23:41 +01:00
Unwrap pointers and miscellany for unrooted_must_root check
This commit is contained in:
parent
bded5c3703
commit
d241826987
3 changed files with 9 additions and 0 deletions
|
@ -62,6 +62,12 @@ impl LintPass for TransmutePass {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn lint_unrooted_ty(cx: &Context, ty: &ast::Ty, warning: &str) {
|
fn lint_unrooted_ty(cx: &Context, ty: &ast::Ty, warning: &str) {
|
||||||
|
let ty = match ty.node {
|
||||||
|
ast::TyBox(ref t) | ast::TyUniq(ref t) |
|
||||||
|
ast::TyVec(ref t) | ast::TyFixedLengthVec(ref t, _) |
|
||||||
|
ast::TyPtr(ast::MutTy { ty: ref t, ..}) | ast::TyRptr(_, ast::MutTy { ty: ref t, ..}) => &**t,
|
||||||
|
_ => ty
|
||||||
|
};
|
||||||
match ty.node {
|
match ty.node {
|
||||||
ast::TyPath(_, _, id) => {
|
ast::TyPath(_, _, id) => {
|
||||||
match cx.tcx.def_map.borrow().get_copy(&id) {
|
match cx.tcx.def_map.borrow().get_copy(&id) {
|
||||||
|
|
|
@ -113,6 +113,7 @@ pub struct JS<T> {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<T> PartialEq for JS<T> {
|
impl<T> PartialEq for JS<T> {
|
||||||
|
#[allow(unrooted_must_root)]
|
||||||
fn eq(&self, other: &JS<T>) -> bool {
|
fn eq(&self, other: &JS<T>) -> bool {
|
||||||
self.ptr == other.ptr
|
self.ptr == other.ptr
|
||||||
}
|
}
|
||||||
|
@ -373,6 +374,7 @@ impl RootCollection {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new stack-bounded root that will not outlive this collection
|
/// Create a new stack-bounded root that will not outlive this collection
|
||||||
|
#[allow(unrooted_must_root)]
|
||||||
fn new_root<'a, 'b, T: Reflectable>(&'a self, unrooted: &JS<T>) -> Root<'a, 'b, T> {
|
fn new_root<'a, 'b, T: Reflectable>(&'a self, unrooted: &JS<T>) -> Root<'a, 'b, T> {
|
||||||
Root::new(self, unrooted)
|
Root::new(self, unrooted)
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@ use dom::text::Text;
|
||||||
use servo_util::atom::Atom;
|
use servo_util::atom::Atom;
|
||||||
use servo_util::namespace;
|
use servo_util::namespace;
|
||||||
|
|
||||||
|
#[allow(unrooted_must_root)]
|
||||||
pub fn serialize(iterator: &mut NodeIterator) -> String {
|
pub fn serialize(iterator: &mut NodeIterator) -> String {
|
||||||
let mut html = String::new();
|
let mut html = String::new();
|
||||||
let mut open_elements: Vec<String> = vec!();
|
let mut open_elements: Vec<String> = vec!();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue