GitXplorerGitXplorer
r

nomicon

public
1932 stars
276 forks
94 issues

Commits

List of commits on branch master.
Verified
625b200e5b33a5af35589db0bc454203a3d46d20

Merge pull request #474 from max-heller/patch-1

eehuss committed 12 days ago
Verified
0aae1972ff90eb8d89b02edb7db1bb47ef992ee5

Fix accidental inline HTML

mmax-heller committed 12 days ago
Verified
7ef05b9777c94836bc92f50f23e6e00981521a89

Merge pull request #472 from josephcsible/patch-1

JJohnTitor committed 19 days ago
Verified
da27ec1906fafaa5ce2351f003fb44d095c76f16

Fix URL fragment to MutexGuard's negative impl of Send

jjosephcsible committed a month ago
Verified
97e84a38c94bf9362b11284c20b2cb4adaa1e868

Merge pull request #470 from Enselic/fix-race

JJohnTitor committed a month ago
Unverified
6855d3a7e196f9e418b4b9468189aae4a242fc45

races.md: data race -> race condition to violate memory safety

EEnselic committed a month ago

README

The README file for this repository.

The Rustonomicon

The Dark Arts of Advanced and Unsafe Rust Programming

Nicknamed "the Nomicon."

NOTE: This is a draft document, and may contain serious errors

Instead of the programs I had hoped for, there came only a shuddering blackness and ineffable loneliness; and I saw at last a fearful truth which no one had ever dared to breathe before — the unwhisperable secret of secrets — The fact that this language of stone and stridor is not a sentient perpetuation of Rust as London is of Old London and Paris of Old Paris, but that it is in fact quite unsafe, its sprawling body imperfectly embalmed and infested with queer animate things which have nothing to do with it as it was in compilation.

This book digs into all the awful details that are necessary to understand in order to write correct Unsafe Rust programs. Due to the nature of this problem, it may lead to unleashing untold horrors that shatter your psyche into a billion infinitesimal fragments of despair.

Requirements

Building the Nomicon requires mdBook. To get it:

cargo install mdbook

mdbook usage

To build the Nomicon use the build sub-command:

mdbook build

The output will be placed in the book subdirectory. To check it out, open the index.html file in your web browser. You can pass the --open flag to mdbook build and it'll open the index page in your default browser (if the process is successful) just like with cargo doc --open:

mdbook build --open

There is also a test sub-command to test all code samples contained in the book:

mdbook test

linkcheck

We use the linkcheck tool to find broken links. To run it locally:

curl -sSLo linkcheck.sh https://raw.githubusercontent.com/rust-lang/rust/master/src/tools/linkchecker/linkcheck.sh
sh linkcheck.sh --all nomicon

Contributing

Given that the Nomicon is still in a draft state, we'd love your help! Please feel free to open issues about anything, and send in PRs for things you'd like to fix or change. If your change is large, please open an issue first, so we can make sure that it's something we'd accept before you go through the work of getting a PR together.