1. 25 10月, 2018 14 次提交
    • P
      Rollup merge of #55254 - rust-lang:clean-two-dots, r=GuillaumeGomez · 88341a99
      Pietro Albini 提交于
      Correct trailing ellipsis in name_from_pat
      
      r? @GuillaumeGomez
      88341a99
    • P
      Rollup merge of #55253 - zackmdavis:some_suggestion, r=pnkfelix · f46ee048
      Pietro Albini 提交于
      only issue "variant of the expected type" suggestion for enums
      
      This suggestion (introduced in pull-request #43178 / eac74104) was being issued for one-field-struct expected types (in which case it is misleading and outright wrong), even though it was only intended for one-field enum-variants (most notably, `Some`).
      
      Add a conditional to adhere to the original intent. (It would be possible to generalize to structs, but not obviously net desirable.) This adds a level of indentation, so the diff here is going to be
      easier to read in [ignore-whitespace mode](https://github.com/rust-lang/rust/commit/b0d3d3b9?w=1).
      
      Resolves #55250.
      
      r? @pnkfelix
      f46ee048
    • P
      Rollup merge of #55251 - NieDzejkob:master, r=TimNN · 823244ac
      Pietro Albini 提交于
      Fix a typo in the documentation of RangeInclusive
      823244ac
    • P
      Rollup merge of #55247 - peterjoel:peterjoel-prim-char-doc-example, r=joshtriplett · f740b8a4
      Pietro Albini 提交于
      Clarified code example in char primitive doc
      
      The example was not as clear as it could be because it was making an assumption about the structure of the data in order to multiply the number of elements in the slice by the item size. This change demonstrates the idea more straightforwardly, without needing a calculation, by just comparing the size of the slices.
      f740b8a4
    • P
      Rollup merge of #55245 - matthiaskrgr:clippy, r=nikomatsakis · c4e51a2c
      Pietro Albini 提交于
      submodules: update clippy from 5afdf8b7 to b1d03437
      
      Just a routine update.
      
      Changes:
      ````
      new_ret_no_self: add sample from #3313 to Known Problems section.
      Support multiline comments and hopefully fix panic
      Check for comments in collapsible ifs
      Resolve ICE in needless range loop lint
      RIIR update_lints: Update changelog links
      Rename if_let_redundant_pattern_matching to redundant_pattern_matching
      Add lint for redundant pattern matching for explicit return boolean
      Fix issue #3322: reword help message for len_zero
      Simplify manual_memcpy suggestion in some cases
      Fix dogfood
      Update known problems for unnecessary_fold
      RIIR update_lints: Replace lint count in README.md
      Rename `active_lints` to `usable_lints`
      Add comment on WalkDir vs. fs::read_dir
      sort_by -> sort_by_key
      Some more documentation for clippy_dev
      Use `WalkDir` to also gather from subdirectories
      Avoid linting `boxed_local` on trait implementations.
      Website: Make lint categories linkable
      Restore clippy_dummy's placeholder name
      Swap order of methods in `needless_range_loop` suggestion in some cases
      Revert "Exclude pattern guards from unnecessary_fold lint"
      Exclude pattern guards from unnecessary_fold lint
      ````
      c4e51a2c
    • P
      Rollup merge of #55200 - octronics:gh51430, r=kennytm · 49eb443b
      Pietro Albini 提交于
      Documents `From` implementations for `Stdio`
      
      This PR solves part of #51430 by adding a basic summary and an example to each `impl From` inside `process` module (`ChildStdin`, `ChildStdout`, `ChildStderr`, `File`).
      
      It does not document if the conversions allocate memory and how expensive they are.
      49eb443b
    • P
      Rollup merge of #55173 - estebank:suggest-static, r=oli-obk · f50e285e
      Pietro Albini 提交于
      Suggest appropriate syntax on missing lifetime specifier in return type
      
      Suggest using `'static` when a lifetime is missing in the return type
      with a structured suggestion instead of a note.
      
      Fix #55170.
      f50e285e
    • P
      Rollup merge of #55138 - zackmdavis:the_paren_trap, r=pnkfelix · 6dfeb760
      Pietro Albini 提交于
      in which unused-parens suggestions heed what the user actually wrote
      
      Aaron Hill pointed out that unnecessary parens around a macro call (paradigmatically, `format!`) yielded a suggestion of hideous macro-expanded code. `span_to_snippet` is fallable as far as the type system is concerned, so the pretty-printing can live on in the oft-neglected `else` branch.
      
      Resolves #55109.
      6dfeb760
    • P
      Rollup merge of #54977 - estebank:macro-arg-parse, r=pnkfelix · f81e47f8
      Pietro Albini 提交于
      Accept `Option<Box<$t:ty>>` in macro argument
      
      Given the following code, compile successfuly:
      
      ```
      macro_rules! test {
          (
              fn fun() -> Option<Box<$t:ty>>;
          ) => {
              fn fun(x: $t) -> Option<Box<$t>>
              { Some(Box::new(x)) }
          }
      }
      
      test! {
          fn fun() -> Option<Box<i32>>;
      }
      ```
      
      Fix #25274.
      f81e47f8
    • P
      Rollup merge of #54965 - chathaway-codes:update-tcp-stream-docs, r=GuillaumeGomez · 699f591a
      Pietro Albini 提交于
      update tcp stream documentation
      
      A small styling issue that seemed inconsistent here when compared to other places (such as https://doc.rust-lang.org/beta/std/net/struct.TcpListener.html).
      699f591a
    • P
      Rollup merge of #53931 - iirelu:keyword-docs, r=steveklabnik · 3bcfa070
      Pietro Albini 提交于
      Gradually expanding libstd's keyword documentation
      
      I'm working on adding new keywords to the documentation and refreshing the incomplete older ones, and I'm hoping that I can eventually add all the standalone-usable keywords after a bunch of incremental work. It would be cool to see the keywords section of std's docs be a definitive reference as to what each keyword means when you see it, and that's what I'm aiming towards with this work.
      
      I'm far from a Rust expert so there will inevitably be things to fix in this, also I'm not sure if this should be a bunch of quickly-merged PRs or one gradually-updated PR that gets merged once it's done.
      3bcfa070
    • P
      Rollup merge of #53507 - phungleson:fix-impl-from-for-waker, r=cramertj · 18f7d41a
      Pietro Albini 提交于
      Add doc for impl From for Waker
      
      As part of issue #51430 (cc @skade).
      
      The impl is very simple, so not sure if we need to go into any details.
      18f7d41a
    • B
      Auto merge of #54658 - petrochenkov:experelude, r=nikomatsakis · 365b9001
      bors 提交于
      Add `extern crate` items to extern prelude
      
      With this patch each `extern crate orig_name as name` item adds name `name` into the extern prelude, as if it was passed with `--extern`.
      
      What changes this causes in practice?
      Almost none! After all, `--extern` passed from Cargo was supposed to replace `extern crate` items in source, so if some code has `extern crate` item (or had it on 2015 edition), then it most likely uses `--extern` as well...
      
      ... with exception of a few important cases.
      
      - Crates using `proc_macro`. `proc_macro` is not passed with `--extern` right now and is therefore not in extern prelude.
      Together with 2018 edition import behavior this causes problems like https://github.com/rust-lang/rust/issues/54418, e.g.
          ```rust
          extern crate proc_macro;
          use proc_macro::TokenStream;
          ```
          doesn't work.
      It starts working after this patch.
      
      - `#[no_std]` crates using `std` conditionally, like @aturon described in https://github.com/rust-lang/rust/issues/53166#issuecomment-425219286, and still wanting to write `std` instead of `crate::std`. This PR covers that case as well.
      This allows us to revert placing `std` into the extern prelude unconditionally, which was, I think, a [bad idea](https://github.com/rust-lang/rust/issues/53166#issuecomment-425117829).
      
      - Later `extern crate` syntax can be extended to support adding an alias to some local path to extern prelude, as it may be required for resolving https://github.com/rust-lang/rust/issues/54647.
      
      Notes:
      - Only `extern crate` items from the root module added to the prelude, mostly because this behavior for items from inner modules would look very strange, rather than for technical reasons.
      This means you can opt out from the prelude additions with something like
          ```rust
          mod inner {
              pub(crate) extern crate foo;
          }
          use inner::foo;
          ```
      - I haven't updated logic for 2018 import canaries to work fully correctly with this. The cases where it matters are pretty exotic (the `extern crate` item must be "sufficiently macro expanded") and I'd rather spend the time on eliminating the canaries entirely.
      365b9001
    • O
      Documents `From` implementations for `Stdio` · 0b82e03a
      OCTronics 提交于
      Add a basic summary and an example to From `ChildStdin`, `ChildStdout`,
      `ChildStderr`, `File` implementations.
      0b82e03a
  2. 24 10月, 2018 7 次提交
  3. 23 10月, 2018 10 次提交
  4. 22 10月, 2018 9 次提交