summary refs log tree commit diff
path: root/src/libstd
AgeCommit message (Collapse)AuthorLines
2013-02-03oldmap: start conversion to explicit selfDaniel Micay-7/+6
2013-02-03oldmap: remove legacy each methodDaniel Micay-4/+0
2013-02-03oldmap: get rid of the legacy each_key methodDaniel Micay-5/+1
2013-02-03oldmap: remove the legacy each_value methodDaniel Micay-4/+0
2013-02-03oldmap: implement core::container::MutableDaniel Micay-6/+8
2013-02-03oldmap: implement core::container::ContainerDaniel Micay-10/+14
2013-02-03oldmap: get rid of the legacy contains_key methodDaniel Micay-8/+4
2013-02-03rename map -> oldmap and mark it as deprecatedDaniel Micay-24/+24
LinearMap is quite a bit faster, and is fully owned/sendable without requiring copies. The older std::map also doesn't use explicit self and relies on mutable fields.
2013-02-03rm commented out std::map code from json moduleDaniel Micay-12/+0
it was replaced by LinearMap
2013-02-03remove old StdMap traitDaniel Micay-80/+2
this has been replaced by core::container::Map
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-9/+7
2013-01-31modernize smallintmapDaniel Micay-133/+95
* switch to explicit self * get rid of the @ box * replace DVec with ~[] (to get rid of the mutable field) * implement the new container::Map trait
2013-01-31copy oldsmallintmap.rs to smallintmap.rsDaniel Micay-0/+237
2013-01-31move smallintmap to oldsmallintmapDaniel Micay-2/+2
2013-01-31implement container::Mutable for SmallIntMapDaniel Micay-3/+17
2013-01-31clean up SmallIntMap tests a bitDaniel Micay-4/+3
2013-01-31drop the StdMap implementation from SmallIntMapDaniel Micay-9/+1
2013-01-31implement container::Container for SmallIntMapDaniel Micay-6/+30
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-180/+181
2013-01-31std: remove transitional codeTim Chevalier-28/+0
2013-01-31Finalize moves-based-on-type implementation.Niko Matsakis-6/+14
Changes: - Refactor move mode computation - Removes move mode arguments, unary move, capture clauses (though they still parse for backwards compatibility) - Simplify how moves are handled in trans - Fix a number of illegal copies that cropped up - Workaround for bug involving def-ids in params (see details below) Future work (I'll open bugs for these...): - Improve error messages for moves that are due to bindings - Add support for moving owned content like a.b.c to borrow check, test in trans (but I think it'll "just work") - Proper fix for def-ids in params Def ids in params: Move captures into a map instead of recomputing. This is a workaround for a larger bug having to do with the def-ids associated with ty_params, which are not always properly preserved when inlining. I am not sure of my preferred fix for the larger bug yet. This current fix removes the only code in trans that I know of which relies on ty_param def-ids, but feels fragile.
2013-01-30Repair RIMOV damage to libstd testsBen Striegel-9/+9
2013-01-30Repair RIMOV damage to libstdBen Striegel-10/+9
2013-01-30RIMOV, round 10Ben Striegel-15/+15
find ./ -type f -name "*.rs" -exec sed -i "s/~\[mut /~\[/g" {} \;
2013-01-30RIMOV, round 8Ben Striegel-2/+2
find ./ -type f -name "*.rs" -exec sed -i "s/ \([a-zA-Z_]\+\): ~\[mut / mut \1: ~\[/g" {} \;
2013-01-30RIMOV, round 7Ben Striegel-2/+2
find ./ -type f -name "*.rs" -exec sed -i "s/ mut \([a-zA-Z_]\+\): ~\[mut / mut \1: ~\[/g" {} \;
2013-01-30RIMOV, round 5Ben Striegel-22/+22
find ./ -type f -name "*.rs" -exec sed -i "s/\&\[mut /\&mut \[/g" {} \;
2013-01-30RIMOV, round 4Ben Striegel-10/+10
find ./ -type f -name "*.rs" -exec sed -i "s/let mut \(.*\)\[mut[ ]\?/let mut \1\[/g" {} \;
2013-01-30RIMOV, round 3Ben Striegel-30/+30
find ./ -type f -name "*.rs" -exec sed -i "s/let \(.*\)\[mut[ ]\?/let mut \1\[/g" {} \;
2013-01-30librustc: Change `self` as a type to `Self` everywhere. r=brsonPatrick Walton-5/+5
2013-01-30rustc: make integral type inference transactional, close #3211, close #4401, ↵Graydon Hoare-3/+3
close #3398.
2013-01-29Merge pull request #4682 from thestinger/treemapTim Chevalier-32/+23
Set trait improvements + minor treemap cleanup
2013-01-29std: Stop using oldcommBrian Anderson-449/+429
2013-01-29De-capitalize "note" to get rid of spurious tidy warningsTim Chevalier-1/+1
2013-01-29add intersection and union to the Set traitDaniel Micay-16/+16
2013-01-29add difference and symmetric_difference to SetDaniel Micay-17/+17
2013-01-29add is_disjoint to the Set traitDaniel Micay-27/+27
2013-01-29add is_subset and is_superset to the Set traitDaniel Micay-37/+37
2013-01-29update comments documenting issue #4492 workaroundDaniel Micay-9/+2
2013-01-29treemap: rm a bit of redundant codeDaniel Micay-4/+2
2013-01-29Merge pull request #4676 from thestinger/fuzzyTim Chevalier-3/+3
fix FuzzyEq
2013-01-29fix FuzzyEqDaniel Micay-3/+3
2013-01-29Fix licenseck to allow 2012-2013 as the year rangeTim Chevalier-2/+2
2013-01-29Merge pull request #4664 from thestinger/fuzzyTim Chevalier-12/+30
FuzzyEq improvements
2013-01-29implement fuzzy_eq with fuzzy_eq_epsDaniel Micay-4/+4
2013-01-29libstd: De-export libstd. rs=deexportPatrick Walton-252/+230
2013-01-29librustc: De-implicit-self the visitor. r=graydonPatrick Walton-0/+1
2013-01-29librustc: Disallow trait bounds in types, enumerations, and structure ↵Patrick Walton-38/+49
definitions. r=tjc
2013-01-29libstd: Remove "dual impls" from the language and enforce coherence rules. ↵Patrick Walton-70/+53
r=brson "Dual impls" are impls that are both type implementations and trait implementations. They can lead to ambiguity and so this patch removes them from the language. This also enforces coherence rules. Without this patch, records can implement traits not defined in the current crate. This patch fixes this, and updates all of rustc to adhere to the new enforcement. Most of this patch is fixing rustc to obey the coherence rules, which involves converting a bunch of records to structs.
2013-01-28Add #[legacy_records] crate attributeTim Chevalier-0/+4
In rustc, rustdoc, rusti, syntax, and std.