rust/src/doc
bors 850912704e Auto merge of #59211 - nox:refcell-borrow-state, r=KodrAus
Introduce RefCell::try_borrow_unguarded

*Come sit next to the fireplace with me, this is going to be a long story.*

So, you may already be aware that Servo has weird design constraints that forces us developers working on it to do weird things. The thing that interests us today is that we do layout on a separate thread with its own thread pool to do some things in parallel, whereas the data it uses comes from the script thread, which implements the entire DOM and related pieces, with `!Sync` data types such as `RefCell<T>`.

The invariant we maintain is that script does not do anything ever with the DOM data as long as layout is doing its job. That's all nice and all, but one thing we don't ensure is that we don't actually know if script was currently mutably borrowing some `RefCell<T>` prior to starting layout, which may lead to aliasing mutable memory and obviously undefined behaviour.

This PR reinstates `RefCell::borrow_state` so that [this method](https://github.com/servo/servo/blob/master/components/script/dom/bindings/cell.rs#L23-L30) can make use of it and return `None` if the cell was mutably borrowed.

Cc @SimonSapin
2019-04-11 12:49:49 +00:00
..
book@b93ec30bbc Update books 2019-03-27 11:02:55 -07:00
edition-guide@b56ddb1154 Update books 2019-03-27 11:02:55 -07:00
embedded-book@7989c72360 Update books 2019-04-06 10:06:51 -07:00
man Rollup merge of #59685 - lzutao:patch-1, r=GuillaumeGomez 2019-04-04 15:09:07 +02:00
nomicon@c02e0e7754 Update books 2019-04-06 10:06:51 -07:00
reference@98f90ff4de Update books 2019-04-06 10:06:51 -07:00
rust-by-example@f68ef3d0f4 Update books 2019-03-27 11:02:55 -07:00
rustc Rollup merge of #55632 - ollie27:deny_overflowing_literals, r=Centril 2019-02-25 11:42:18 +01:00
rustc-guide@464cb5b166 update rustc-guide submodule 2019-03-31 19:36:00 -05:00
rustdoc tweak docs for rustdoc's --show-coverage 2019-02-28 16:13:55 -06:00
unstable-book Auto merge of #59211 - nox:refcell-borrow-state, r=KodrAus 2019-04-11 12:49:49 +00:00
complement-design-faq.md Remove the FAQs in favor of the website 2015-12-23 14:03:45 -08:00
complement-lang-faq.md Remove the FAQs in favor of the website 2015-12-23 14:03:45 -08:00
complement-project-faq.md Remove the FAQs in favor of the website 2015-12-23 14:03:45 -08:00
favicon.inc Use https URLs to refer to rust-lang.org where appropriate. 2015-08-09 14:28:46 -07:00
footer.inc rustdoc: Improve playground run buttons 2016-10-15 18:32:03 +01:00
full-toc.inc doc: add webfonts and tweak the styles accordingly 2014-04-19 21:25:35 +09:00
grammar.md Rollup merge of #50791 - bstrie:null, r=QuietMisdreavus 2018-05-17 13:51:25 -06:00
guide-crates.md Grammar tweak to old guide stub documents. 2015-01-16 22:25:22 -05:00
guide-error-handling.md Convert old doc links to current edition 2019-02-13 14:39:25 +00:00
guide-ffi.md Grammar tweak to old guide stub documents. 2015-01-16 22:25:22 -05:00
guide-macros.md Grammar tweak to old guide stub documents. 2015-01-16 22:25:22 -05:00
guide-ownership.md Convert old doc links to current edition 2019-02-13 14:39:25 +00:00
guide-plugins.md Add top level sections to the Unstable Book. 2017-04-18 21:26:09 -04:00
guide-pointers.md Convert old doc links to current edition 2019-02-13 14:39:25 +00:00
guide-strings.md Grammar tweak to old guide stub documents. 2015-01-16 22:25:22 -05:00
guide-tasks.md Fix broken link in old rust guide 2015-03-04 23:18:24 +00:00
guide-testing.md Convert old doc links to current edition 2019-02-13 14:39:25 +00:00
guide-unsafe.md Grammar tweak to old guide stub documents. 2015-01-16 22:25:22 -05:00
guide.md Grammar tweak to old guide stub documents. 2015-01-16 22:25:22 -05:00
index.md Add Rustlings to the doc index 2019-02-05 15:32:59 +01:00
intro.md Remove the 30 minute intro 2015-04-18 17:55:31 -04:00
not_found.md dro -> duckduckgo 2018-10-05 08:52:44 -07:00
redirect.inc Exclude old book redirect stubs from search engines 2019-03-14 22:56:38 +00:00
reference.md Redirect to the new reference 2017-02-21 14:03:13 -05:00
robots.txt Track changes to robots.txt 2019-03-15 15:05:12 +00:00
rust.css doc: use correct body font URLs 2019-03-24 22:06:34 -04:00
rust.md Avoid linking to a moved page in rust.html 2017-03-29 15:38:47 +02:00
rustc-ux-guidelines.md Rename trans to codegen everywhere. 2018-05-17 15:08:30 +03:00
rustdoc.md Move rustdoc.md into the book 2015-01-21 14:59:25 -05:00
tutorial.md Update tutorial.md 2018-05-17 12:25:24 -07:00
version_info.html.template Add alt tags for logos 2016-01-20 11:53:20 -05:00