1. 26 10月, 2018 2 次提交
  2. 25 10月, 2018 1 次提交
  3. 24 10月, 2018 5 次提交
  4. 23 10月, 2018 6 次提交
  5. 22 10月, 2018 6 次提交
  6. 21 10月, 2018 10 次提交
  7. 20 10月, 2018 8 次提交
  8. 19 10月, 2018 2 次提交
    • D
      Only suggest paths that exist. · 4334aaac
      David Wood 提交于
      In order to output a path that could actually be imported (valid and
      visible), we need to handle re-exports correctly.
      
      For example, take `std::os::unix::process::CommandExt`, this trait is
      actually defined at `std::sys::unix::ext::process::CommandExt` (at time
      of writing).
      
      `std::os::unix` rexports the contents of `std::sys::unix::ext`.
      `std::sys` is private so the "true" path to `CommandExt` isn't accessible.
      
      In this case, the visible parent map will look something like this:
      
      (child) -> (parent)
      `std::sys::unix::ext::process::CommandExt` -> `std::sys::unix::ext::process`
      `std::sys::unix::ext::process` -> `std::sys::unix::ext`
      `std::sys::unix::ext` -> `std::os`
      
      This is correct, as the visible parent of `std::sys::unix::ext` is in fact
      `std::os`.
      
      When printing the path to `CommandExt` and looking at the current
      segment that corresponds to `std::sys::unix::ext`, we would normally
      print `ext` and then go to the parent - resulting in a mangled path like
      `std::os::ext::process::CommandExt`.
      
      Instead, we must detect that there was a re-export and instead print `unix`
      (which is the name `std::sys::unix::ext` was re-exported as in `std::os`).
      4334aaac
    • N
      normalize the self-type that we extract from impl · 9a7bb0ef
      Niko Matsakis 提交于
      9a7bb0ef