about summary refs log tree commit diff
path: root/src/lib/map.rs
AgeCommit message (Collapse)AuthorLines
2011-12-06Establish 'core' library separate from 'std'.Graydon Hoare-336/+0
2011-11-18Update stdlib, compiler, and tests to new kind systemMarijn Haverbeke-16/+19
This involved adding 'copy' to more generics than I hoped, but an experiment with making it implicit showed that that way lies madness -- unless enforced, you will not remember to mark functions that don't copy as not requiring copyable kind. Issue #1177
2011-11-17remove compile-command from local variable blocksNiko Matsakis-1/+0
2011-10-28Make shared kind the default only for generic functionsMarijn Haverbeke-6/+6
You almost never want a function with pinned type params. For types, objects, resources, and tags, pinned types are actually often more sane. For most of these, shared rarely makes sense. Only tricky case is objs -- you'll have to think about the kinds you want there. Issue #1076
2011-10-26Add more std documentationBrian Anderson-18/+130
2011-10-25Properly take mutable object fields into account during alias analysisMarijn Haverbeke-2/+2
Closes #1055
2011-10-25Update our code to new type parameter kind syntaxMarijn Haverbeke-19/+16
Closes #1067
2011-10-21Move hash table iteration over to block-taking functionsMarijn Haverbeke-10/+15
Issue #1056
2011-10-20Make fn denote a bare function. Convert fn to fn@ as neededBrian Anderson-2/+2
2011-10-07Parse and typecheck by-value and by-ref arg specsMarijn Haverbeke-4/+4
Add sprinkle && throughout the compiler to make it typecheck again. Issue #1008
2011-09-12Reformat for new mode syntax, step 1Marijn Haverbeke-26/+26
Long lines were fixed in a very crude way, as I'll be following up with another reformat in a bit.
2011-09-02Reformat. Issue #855Brian Anderson-1/+1
2011-09-01Rename std::istr to std::str. Issue #855Brian Anderson-1/+1
2011-08-27Convert std::map::new_str_hash to istrs. Issue #855Brian Anderson-2/+2
2011-08-20ReformatBrian Anderson-36/+37
This changes the indexing syntax from .() to [], the vector syntax from ~[] to [] and the extension syntax from #fmt() to #fmt[]
2011-08-18Remove or _-prefix all unused function argumentsMarijn Haverbeke-3/+3
This should make the compilation process a bit less noisy.
2011-08-16Port the stdlib to the expr foo::<T> syntax.Erick Tryzelaar-1/+1
2011-08-16Port the stdlib to the decl foo<T> syntax.Erick Tryzelaar-15/+15
2011-08-16Port the stdlib to the typaram foo<T> syntax.Erick Tryzelaar-26/+26
2011-08-16Rename std::ivec to std::vecBrian Anderson-1/+1
2011-08-15The wonky for...in... whitespace was bothering me. Sorry!Lindsey Kuper-3/+3
2011-08-09Do some cleanup in stdlib.Michael Sullivan-43/+37
2011-08-09Port the stdlib to the ivec type [T] syntax.Erick Tryzelaar-6/+6
2011-07-29Enable kind checking on typarams, fix kind constraints in library and comp.Graydon Hoare-2/+2
2011-07-29Turn on kind propagation for typarams. Annotate a bunch of typarams in rustc ↵Graydon Hoare-23/+23
and libstd.
2011-07-27Reformat for new syntaxMarijn Haverbeke-111/+102
2011-07-26Remove all uses of tuples from the compiler and stdlibMarijn Haverbeke-3/+3
2011-07-25Remove some rustboot-ismsMarijn Haverbeke-9/+3
Closes #464
2011-07-21Add some support for using a map like a set.Michael Sullivan-2/+15
2011-07-08rustc: Move maps over to interior vectorsPatrick Walton-11/+10
2011-07-05Move everything syntax-related to syntax/, break deps on rest of compilerMarijn Haverbeke-3/+25
src/comp/syntax is currently just a sub-module of rustc, but it will, in the near future, be its own crate. This includes: - The AST data structure - The parser - The pretty-printer - Visit, walk, and fold - The syntax extension system - Some utility stuff that should be in the stdlib* *) Stdlib extensions currently require a snapshot before they can be used, and the win build is very broken right now. This is temporary and will be cleaned up when one of those problems goes away. A lot of code was moved by this patch, mostly towards a more organized layout. Some package paths did get longer, and I guess the new layout will take some getting used to. Sorry about that! Please try not to re-introduce any dependencies in syntax/ on any of the other src/comp/ subdirs.
2011-06-15Reformat source tree (minus a couple tests that are still grumpy).Graydon Hoare-182/+139
2011-06-09Properly handle lifetime of aliases in nested blocksMarijn Haverbeke-1/+2
There was a bug that would cause the alias analyser to allow you to invalidate an alias that was no longer directly referred to, even if another alias was rooted in it. It now properly tracks dependencies between live aliases. Required another case of copying values in map.rs.
2011-06-09Some more workarounds to please the alias checkerMarijn Haverbeke-6/+12
Some of the vec utilities now only work on immutable vecs, since they would have to be rewritten to do a lot more copying to be alias-safe. Some forced copying was added to map.rs, showing a weakness in the alias checker (or maybe the alias system): when fn args are passed into a function, calling them must assume all aliases that are not immutably rooted (directly connected to a local or temporary without any mutable edges) become invalid. This will be a drag on functional programming in Rust. Work around alias issues in the stdlib
2011-05-31stdlib: Remove unneeded type params from alt patternsBrian Anderson-10/+10
2011-05-22stdlib: Do tail calls in std::map. Remove FIXMEsBrian Anderson-3/+1
2011-05-22stdlib: Use if/alt expressions in std::mapBrian Anderson-10/+8
2011-05-17Finally rename std::_xxx to std::xxxMarijn Haverbeke-2/+2
Except for _task, which is still a keyword.
2011-05-12Downcase std modules again, move to :: for module dereferencingMarijn Haverbeke-0/+246
This should be a snapshot transition.
2011-05-06Rename std modules to be camelcasedMarijn Haverbeke-246/+0
(Have fun mergining your stuff with this.)
2011-04-25Skip likely-zero initial probe, speed up map.rs.Graydon Hoare-5/+5
2011-04-22Minimize calls to hash function in map.rsGraydon Hoare-11/+12
2011-04-19Remove half-baked 'opacity' layer qualifier.Graydon Hoare-2/+2
2011-04-19Remove effect system from src.Graydon Hoare-2/+2
2011-03-22Revert "Remove usages of case(_) { fail; } since the compiler does this ↵Patrick Walton-0/+1
automatically". When we have exhaustiveness checking, "case(_) { fail; }" will be useful to silence warnings. This reverts commit 92a716d862d92d3cc52a400457d2c3900d0c57a2.
2011-03-22Remove usages of case(_) { fail; } since the compiler does this automaticallyBrian Anderson-1/+0
2011-03-18rustc: Box the tuples returned by hashmap.items() for now since we don't ↵Patrick Walton-3/+3
have alias iterators yet
2011-03-18Add "mutable?" to _vec in the standard library; fix callersPatrick Walton-1/+1
2011-03-09Remove redundant imports in lib (rustc doesn't like 'std' as a synonym for ↵Graydon Hoare-6/+0
root within std.rc anyway)
2010-11-18rustboot: Don't use walk to traverse statements in type.ml; fixes redundant ↵Patrick Walton-0/+2
checking, improves diagnostics. Also report untyped slots.