1. 23 1月, 2014 1 次提交
  2. 22 1月, 2014 12 次提交
  3. 21 1月, 2014 2 次提交
  4. 20 1月, 2014 3 次提交
  5. 19 1月, 2014 3 次提交
  6. 18 1月, 2014 8 次提交
    • K
      b3c93b34
    • P
      Rename iterators for consistency · 3fd8c8b3
      Palmer Cox 提交于
      Rename existing iterators to get rid of the Iterator suffix and to
      give them names that better describe the things being iterated over.
      3fd8c8b3
    • D
      handle zero-size allocations correctly · ae2a5ecb
      Daniel Micay 提交于
      The `malloc` family of functions may return a null pointer for a
      zero-size allocation, which should not be interpreted as an
      out-of-memory error.
      
      If the implementation does not return a null pointer, then handling
      this will result in memory savings for zero-size types.
      
      This also switches some code to `malloc_raw` in order to maintain a
      centralized point for handling out-of-memory in `rt::global_heap`.
      
      Closes #11634
      ae2a5ecb
    • H
      std::trie: use unsafe code to give a 3x speed up to the iterator. · 0148055a
      Huon Wilson 提交于
      This stores the stack of iterators inline (we have a maximum depth with
      `uint` keys), and then uses direct pointer offsetting to manipulate it,
      in a blazing fast way:
      
      Before:
      
          bench_iter_large          ... bench:     43187 ns/iter (+/- 3082)
          bench_iter_small          ... bench:       618 ns/iter (+/- 288)
      
      After:
      
          bench_iter_large          ... bench:     13497 ns/iter (+/- 1575)
          bench_iter_small          ... bench:       220 ns/iter (+/- 91)
      0148055a
    • H
      std::trie: remove each_{key,value}_reverse internal iterators. · f0c554d0
      Huon Wilson 提交于
      This are *trivial* to reimplement in terms of each_reverse if that extra
      little bit of performance is needed.
      f0c554d0
    • B
      Add FIXME comments regarding issue #11526. · f125b71c
      Brendan Zabarauskas 提交于
      f125b71c
    • B
      Simplify std::num::Primitive trait definition · 472dfe74
      Brendan Zabarauskas 提交于
      This removes the `Primitive::{bits, bytes, is_signed}` methods and removes the operator trait constraints, for the reasons outlined below:
      
      - The `Primitive::{bits, bytes}` associated functions were originally added to reflect the existing `BITS` and `BYTES` statics included in the numeric modules. These statics are only exist as a workaround for Rust's lack of CTFE, and should probably be deprecated in the future in favor of using the `std::mem::size_of` function (see #11621).
      
      - `Primitive::is_signed` seems to be of little utility and does not seem to be used anywhere in the Rust compiler or libraries. It is also rather ugly to call due to the `Option<Self>` workaround for #8888.
      
      - The operator trait constraints are already covered by the `Num` trait.
      472dfe74
    • A
      Tweak the interface of std::io · 295b46fc
      Alex Crichton 提交于
      * Reexport io::mem and io::buffered structs directly under io, make mem/buffered
        private modules
      * Remove with_mem_writer
      * Remove DEFAULT_CAPACITY and use DEFAULT_BUF_SIZE (in io::buffered)
      295b46fc
  7. 17 1月, 2014 3 次提交
  8. 16 1月, 2014 8 次提交