about summary refs log tree commit diff
path: root/src/libsyntax/ext/pipes/pipec.rs
AgeCommit message (Collapse)AuthorLines
2013-08-01Remove the pipes compilerBrian Anderson-467/+0
The pipes compiler produced data types that encoded efficient and safe bounded message passing protocols between two endpoints. It was also capable of producing unbounded protocols. It was useful research but was arguably done before its proper time. I am removing it for the following reasons: * In practice we used it only for producing the `oneshot` and `stream` unbounded protocols and all communication in Rust use those. * The interface between the proto! macro and the standard library has a large surface area and was difficult to maintain through language and library changes. * It is now written in an old dialect of Rust and generates code which would likely be considered non-idiomatic. * Both the compiler and the runtime are difficult to understand, and likewise the relationship between the generated code and the library is hard to understand. Debugging is difficult. * The new scheduler implements `stream` and `oneshot` by hand in a way that will be significantly easier to maintain. This shouldn't be taken as an indication that 'channel protocols' for Rust are not worth pursuing again in the future.
2013-08-01migrate many `for` loops to `foreach`Daniel Micay-6/+6
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-8/+10
2013-07-17librustc: Add a lint mode for unnecessary `copy` and remove a bunch of them.Patrick Walton-10/+9
2013-07-08Correct merge errorsNiko Matsakis-1/+1
2013-07-07De-share ast::TyJames Miller-6/+6
2013-07-07De-manage OptVec<TyParamBounds>James Miller-14/+13
2013-06-30Remove vec::{map, mapi, zip_map} and the methods, except for .map, since thisHuon Wilson-6/+6
is very common, and the replacement (.iter().transform().collect()) is very ugly.
2013-06-28librustc: Fix merge fallout.Patrick Walton-1/+1
2013-06-28librustc: Remove the broken overloaded assign-ops from the language.Patrick Walton-28/+29
They evaluated the receiver twice. They should be added back with `AddAssign`, `SubAssign`, etc., traits.
2013-06-26Infer default static/Owned bounds for unbounded heap fns/traits (#7264)Ben Blum-10/+10
2013-06-25auto merge of #7365 : cmr/rust/syntax_cleanup, r=Aatchbors-3/+1
Sets the stage for further cleanup (especially mass-slaughter of `@`)
2013-06-25remove the redundant `each` method from OptVecDaniel Micay-2/+2
2013-06-25great renaming propagation: syntaxCorey Richardson-3/+1
2013-06-24remove old_iterDaniel Micay-2/+2
the `test/run-pass/class-trait-bounded-param.rs` test was xfailed and written in an ancient dialect of Rust so I've just removed it this also removes `to_vec` from DList because it's provided by `std::iter::to_vec` an Iterator implementation is added for OptVec but some transitional internal iterator methods are still left
2013-06-23Parse and typecheck (not kindcheck) bounds on trait paths.Ben Blum-9/+10
2013-06-23vec: remove BaseIter implementationDaniel Micay-3/+3
I removed the `static-method-test.rs` test because it was heavily based on `BaseIter` and there are plenty of other more complex uses of static methods anyway.
2013-06-21vec: rm old_iter implementations, except BaseIterDaniel Micay-6/+6
The removed test for issue #2611 is well covered by the `std::iterator` module itself. This adds the `count` method to `IteratorUtil` to replace `EqIter`.
2013-06-14add IteratorUtil to the preludeDaniel Micay-1/+0
2013-06-13Use @str instead of @~str in libsyntax and librustc. Fixes #5048.Huon Wilson-12/+12
This almost removes the StringRef wrapper, since all strings are Equiv-alent now. Removes a lot of `/* bad */ copy *`'s, and converts several things to be &'static str (the lint table and the intrinsics table). There are many instances of .to_managed(), unfortunately.
2013-06-10std: remove str::{connect,concat}*.Huon Wilson-6/+4
2013-06-08std: remove each[i]_mut functions, in favour of iterators.Huon Wilson-2/+2
2013-06-05remove unused cx'sJohn Clements-4/+4
2013-06-01Swap return value of pipes::init Fixes #4501Nick Desaulniers-24/+7
2013-05-29librustc: Stop reexporting the standard modules from prelude.Patrick Walton-0/+3
2013-05-28Remove unnecessary allocations flagged by lintSeo Sanghyeon-5/+5
2013-05-22syntax: Change syntax extensions to expand to `std::foo` instead of `core::foo`Patrick Walton-22/+22
2013-05-22libextra: Rename the actual metadata names of libcore to libstd and libstd ↵Patrick Walton-0/+2
to libextra
2013-05-22syntax/ext: convert all AstBuilder methods to a uniform syntax.Huon Wilson-37/+53
2013-05-22syntax/ext: collect the ast building traits into a single trait.Huon Wilson-18/+20
2013-05-22syntax/ext: modernise ext_ctxt to be CamelCase and use new.Huon Wilson-21/+21
2013-05-20Remove all unnecessary allocations (as flagged by lint)Alex Crichton-2/+2
2013-05-09Use a specialized string interner to reduce the need for owned stringsBjörn Steinbrink-19/+19
&str can be turned into @~str on demand, using to_owned(), so for strings, we can create a specialized interner that accepts &str for intern() and find() but stores and returns @~str.
2013-05-08test: Fix tests and the pipe compilerPatrick Walton-4/+5
2013-05-08librustc: Remove mutable fields from the language.Patrick Walton-4/+2
They're still parsed though, to get through bootstrapping.
2013-05-01allow parsing attributes on struct fieldsErick Tryzelaar-1/+2
2013-05-01rustc: remove the rest of dropErick Tryzelaar-1/+0
Removes: ast::struct_def::dtor syntax::ast::ii_dtor syntax::visit::fk_dtor syntax::ast_map::node_dtor syntax:struct_dtor
2013-04-29test: Fix tests.Patrick Walton-1/+3
2013-04-29librustc: Remove `ptr::addr_of`.Patrick Walton-5/+3
2013-04-27only use #[no_core] in libcoreDaniel Micay-5/+0
2013-04-25Rename vec::mod2 to vec::mod_zipCorey Richardson-2/+2
2013-03-29librustc: Remove `fail_unless!`Patrick Walton-1/+1
2013-03-28librustc: Remove common fields and nested enums from the languagePatrick Walton-1/+1
2013-03-13librustc: Don't accept `as Trait` anymore; fix all occurrences of it.Patrick Walton-20/+20
2013-03-11libsyntax: Remove newtype enums from libsyntax. rs=deenumPatrick Walton-3/+1
2013-03-07test: Fix tests.Patrick Walton-1/+2
2013-03-07librustc: Convert all uses of `assert` over to `fail_unless!`Patrick Walton-1/+1
2013-03-04Remove unused imports throughout src/Alex Crichton-5/+1
2013-03-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-1/+2
2013-02-28Fix implicit leaks of imports throughout librariesAlex Crichton-1/+2
Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub'