about summary refs log tree commit diff
path: root/src/libcore/pin.rs
AgeCommit message (Collapse)AuthorLines
2020-07-27mv std libs to library/mark-833/+0
2020-07-09libstd/libcore: fix various typosAndy Russell-1/+1
2020-06-30Deny unsafe ops in unsafe fns, part 6LeSeulArtichaut-1/+0
And final part!!!
2020-06-30Deny unsafe ops in unsafe fns, part 1LeSeulArtichaut-3/+11
2020-04-27clarify interaction of pin drop guarantee and panicsRalf Jung-2/+4
2020-03-06fix various typosMatthias Krüger-2/+2
2020-01-06Relax the Sized bounds on Pin::map_unchecked(_mut)Thomas de Zeeuw-0/+2
2019-12-21Require issue = "none" over issue = "0" in unstable attributesRoss MacArthur-1/+1
2019-12-07Explicitly refer to operator methods in Pin implsKonrad Borowski-9/+9
2019-12-05Document why Pin implementations aren't derivedKonrad Borowski-0/+6
2019-12-05Use deref target in Pin trait implementationsKonrad Borowski-17/+35
Using deref target instead of pointer itself avoids providing access to `&Rc<T>` for malicious implementations, which would allow calling `Rc::get_mut`. This is a breaking change necessary due to unsoundness, however the impact of it should be minimal. This only fixes the issue with malicious `PartialEq` implementations, other `Pin` soundness issues are still here. See <https://internals.rust-lang.org/t/unsoundness-in-pin/11311/73> for more details.
2019-11-26Format libcore with rustfmtDavid Tolnay-13/+10
This commit applies rustfmt with default settings to files in src/libcore *that are not involved in any currently open PR* to minimize merge conflicts. The list of files involved in open PRs was determined by querying GitHub's GraphQL API with this script: https://gist.github.com/dtolnay/aa9c34993dc051a4f344d1b10e4487e8 With the list of files from the script in `outstanding_files`, the relevant commands were: $ find src/libcore -name '*.rs' | xargs rustfmt --edition=2018 $ rg libcore outstanding_files | xargs git checkout -- Repeating this process several months apart should get us coverage of most of the rest of libcore.
2019-11-06Have tidy ensure that we document all `unsafe` blocks in libcoreOliver Scherer-0/+2
2019-09-27pin.rs: fix links to primitives in documentationrusty-snake-0/+2
2019-09-17Update src/libcore/pin.rsTaiki Endo-1/+1
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-09-17Add an example to Pin::as_mutTaiki Endo-0/+21
2019-09-17Rollup merge of #64531 - taiki-e:pin-self, r=CentrilMazdak Farrokhzad-9/+9
Use shorthand syntax in the self parameter of methods of Pin
2019-09-17Use shorthand syntax in the self parameter of methods of PinTaiki Endo-9/+9
2019-09-17Elide lifetimes in `Pin<&(mut) Self>`Taiki Endo-2/+2
2019-08-28Stabilize pin_into_inner in 1.39.0Alessandro Ghedini-2/+2
FCP: https://github.com/rust-lang/rust/issues/60245#issuecomment-522258129 Closes #60245
2019-08-10Rollup merge of #63350 - iluuu1994:use-associated-type-bounds, r=CentrilMazdak Farrokhzad-8/+2
Use associated_type_bounds where applicable - closes #61738
2019-08-08Use associated_type_bounds where applicable - closes #61738Ilija Tovilo-8/+2
2019-08-08remove confusing remarkRalf Jung-1/+1
2019-08-08move of packed fields might or might not occur when they actually are ↵Ralf Jung-1/+2
sufficiently aligned
2019-07-28Deny `unused_lifetimes` through rustbuildVadim Petrochenkov-1/+1
2019-07-04Add missing type links in Pin documentationGuillaume Gomez-63/+81
2019-06-19nitsRalf Jung-2/+4
2019-06-19Apply suggestions from code reviewRalf Jung-4/+4
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-06-16make example code typecheck at leastRalf Jung-3/+11
2019-06-16keep links in local crate where possibleRalf Jung-9/+9
2019-06-16minor editsRalf Jung-9/+9
2019-06-15mention that overwrite-without-drop also violates the drop guarantee, and ↵Ralf Jung-8/+14
link some more stuff
2019-06-15explain better that structural pinning is a per-field choiceRalf Jung-29/+102
2019-06-07libcore/pin: Minor grammar corrections for module documentationThomas Bracht Laumann Jespersen-20/+21
This is by no means exhaustive, but I noticed a few grammatical errors when reading the documentation, and decided just to push these. Some standard rules/guidelines I followed: * Do not split infinitives, ie "not to move" instead of "to not move" * Do not use "since" when you want to say "because" or "as" - the word "since" has a temporal meaning In addition: * Fix a small typo: "Similarily" should be "Similarly" * Delete double-spaces after full stop
2019-05-08pin: make the to-module link more visibleRalf Jung-1/+1
2019-04-24Add Pin::{into_inner,into_inner_unchecked}Wim Looman-0/+34
2019-04-19libcore: deny more...Mazdak Farrokhzad-3/+3
2019-04-18libcore => 2018Taiki Endo-4/+4
2019-04-13Expand note on mutable referencesChris Gregory-1/+4
2019-04-12Add comment that field projectin also works with mutable fieldsChris Gregory-5/+6
2019-04-11Remove [mut] syntax in pin docsChris Gregory-9/+9
2019-03-19Rollup merge of #58939 - taeguk:fix-doc-about-pin, r=rkruppeMazdak Farrokhzad-1/+1
Fix a tiny error in documentation of std::pin. `new_unmoved` must be `mut` for passing to `std::mem::swap`.
2019-03-11Improvements to comments in libstd, libcore, liballoc.Alexander Regueiro-1/+1
2019-03-05Fix a tiny error in documentation of std::pin.Taeguk Kwon-1/+1
2019-03-03Auto merge of #58866 - kennytm:rollup, r=kennytmbors-1/+1
Rollup of 14 pull requests Successful merges: - #58730 (Have all methods of Filter and FilterMap use internal iteration) - #58780 (ManuallyDrop != MaybeUninit) - #58782 (Replace `s` with `self` in docs for str methods taking self.) - #58785 (allow specifying attributes for tool lints) - #58802 (Ensure `record_layout_for_printing()` is inlined.) - #58821 (Fixed a syntax error in the pin docs) - #58830 (tidy: deny(rust_2018_idioms)) - #58832 (Revert switching to GCP on AppVeyor) - #58833 (tools/rustbook: deny(rust_2018_idioms)) - #58835 (tools/remote-test-{client,server}: deny(rust_2018_idioms)) - #58838 (Fix typo in Vec#resize_with documentation) - #58842 (Forbid duplicating Cargo as a dependency) - #58852 (Update toolchain to build NetBSD release) - #58865 (Fix C-variadic function printing)
2019-03-02Bootstrap compiler update for 1.35 releaseMark Rousskov-1/+1
2019-02-28Fixed a syntax error in the pin docsAlex Gaynor-1/+1
2019-02-21take a bit more space for new_unchecked examplesRalf Jung-4/+10
2019-02-21this is for you, tidyRalf Jung-2/+2
2019-02-21explain unsafeRalf Jung-2/+2