about summary refs log tree commit diff
path: root/src/libsyntax/print
AgeCommit message (Collapse)AuthorLines
2016-03-14Add pretty printer output for `default`Aaron Turon-0/+3
2016-03-12Removed integer suffixes in libsyntax cratesrinivasreddy-2/+2
2016-03-07implement the `?` operatorJorge Aparicio-0/+4
The `?` postfix operator is sugar equivalent to the try! macro, but is more amenable to chaining: `File::open("foo")?.metadata()?.is_dir()`. `?` is accepted on any *expression* that can return a `Result`, e.g. `x()?`, `y!()?`, `{z}?`, `(w)?`, etc. And binds more tightly than unary operators, e.g. `!x?` is parsed as `!(x?)`. cc #31436
2016-03-07syntax: Always pretty print a newline after doc commentsErick Tryzelaar-1/+2
Before this patch, code that had a doc comment as the first line, as in: ```rust /// Foo struct Foo; ``` Was pretty printed into: ```rust ///Foostruct Foo; ``` This makes sure that that there is always a trailing newline after a doc comment. Closes #31722
2016-02-27fix fallout from libsyntax enumpocalypseAlex Burka-1/+1
2016-02-27libsyntax: parse inclusive rangesAlex Burka-2/+6
2016-02-13Split ast::PatKind::Enum into tuple struct and path patternsVadim Petrochenkov-7/+8
2016-02-13Rename ast::Pat_ and its variantsVadim Petrochenkov-16/+16
2016-02-12Use more autoderef in libsyntaxJonas Schievink-133/+133
2016-02-11Remove some unnecessary indirection from AST structuresVadim Petrochenkov-4/+4
2016-02-11[breaking-change] don't glob export ast::PathListItem_ variantsOliver 'ker' Schneider-2/+2
2016-02-11[breaking-change] don't glob export ast::StrStyle variantsOliver 'ker' Schneider-8/+8
2016-02-11[breaking-change] don't glob export ast::Visibility variantsOliver 'ker' Schneider-8/+8
2016-02-11[breaking-change] don't glob export ast::TraitItemKind variantsOliver 'ker' Schneider-3/+3
2016-02-11[breaking-change] don't glob export ast::Mutablity variantsOliver 'ker' Schneider-11/+11
2016-02-11[breaking-change] don't glob export ast::MetaItem_Oliver 'ker' Schneider-3/+3
2016-02-11[breaking-change] don't glob export ast::MacStmtStyleOliver 'ker' Schneider-2/+2
2016-02-11[breaking-change] don't glob export ast::KleeneOp variantsOliver 'ker' Schneider-2/+2
2016-02-11[breaking-change] don't glob export ast::Item_ variantsOliver 'ker' Schneider-15/+15
2016-02-11[breaking-change] don't glob export ast::ForeignItem_ variantsOliver 'ker' Schneider-2/+2
2016-02-11[breaking-change] don't pub export ast::Stmt_ variantsOliver Schneider-4/+4
2016-02-11[breaking-change] don't pub export ast::IntLitType variantsOliver Schneider-3/+3
2016-02-11[breaking-change] don't pub export ast::Lit_ variantsOliver Schneider-8/+8
2016-02-11[breaking-change] don't pub export ast::Ty_ variantsOliver Schneider-15/+15
2016-02-11remove unit test that can't be tested anymoreOliver Schneider-8/+0
2016-02-11[breaking-change] remove the sign from integer literals in the astOliver Schneider-10/+2
2016-02-11[breaking-change] don't glob export ast::{UintTy, IntTy} variantsOliver Schneider-2/+2
2016-02-11[breaking-change] don't glob export ast::Expr_ variantsOliver Schneider-48/+48
2016-02-11[breaking-change] don't glob export ast::ExplicitSelf_ variantsOliver Schneider-12/+12
2016-02-11[breaking-change] don't glob export ast::Decl_ variantsOliver Schneider-2/+2
2016-02-11[breaking-change] don't glob export ast::CaptureClause variantsOliver Schneider-3/+3
2016-02-11[breaking-change] don't glob import/export syntax::abi enum variantsOliver Schneider-8/+8
2016-02-11[breaking-change] don't glob export ast::BlockCheckMode variantsOliver Schneider-4/+4
2016-02-11[breaking-change] don't glob import ast::FunctionRetTy variantsOliver Schneider-11/+11
2016-01-28libsyntax: fix pretty printing of macro with bracesTomasz Miąsko-5/+2
Pretty printing of macro with braces but without terminated semicolon removed more boxes from stack than it put there, resulting in panic. This fixes the issue #30731.
2016-01-26Auto merge of #31120 - alexcrichton:attribute-deny-warnings, r=brsonbors-1/+0
This commit removes the `-D warnings` flag being passed through the makefiles to all crates to instead be a crate attribute. We want these attributes always applied for all our standard builds, and this is more amenable to Cargo-based builds as well. Note that all `deny(warnings)` attributes are gated with a `cfg(stage0)` attribute currently to match the same semantics we have today
2016-01-26Fix warnings during testsAlex Crichton-1/+0
The deny(warnings) attribute is now enabled for tests so we need to weed out these warnings as well.
2016-01-25Fix pretty_printer to print omitted type `_` markernxnfufunezn-8/+8
2015-12-30Auto merge of #30526 - Ms2ger:PathParameters, r=brsonbors-2/+2
2015-12-23Minor fix to whitespace in libsyntaxErick Tryzelaar-2/+2
2015-12-22Stop re-exporting PathParameters's variants.Ms2ger-2/+2
2015-12-21Auto merge of #30460 - Ms2ger:BindingMode, r=alexcrichtonbors-4/+4
2015-12-20Stop re-exporting the ast::BindingMode variants.Ms2ger-4/+4
2015-12-19Auto merge of #30184 - petrochenkov:ascr, r=nikomatsakisbors-1/+6
This PR is a rebase of the original PR by @eddyb https://github.com/rust-lang/rust/pull/21836 with some unrebasable parts manually reapplied, feature gate added + type equality restriction added as described below. This implementation is partial because the type equality restriction is applied to all type ascription expressions and not only those in lvalue contexts. Thus, all difficulties with detection of these contexts and translation of coercions having effect in runtime are avoided. So, you can't write things with coercions like `let slice = &[1, 2, 3]: &[u8];`. It obviously makes type ascription less useful than it should be, but it's still much more useful than not having type ascription at all. In particular, things like `let v = something.iter().collect(): Vec<_>;` and `let u = t.into(): U;` work as expected and I'm pretty happy with these improvements alone. Part of https://github.com/rust-lang/rust/issues/23416
2015-12-18Rollup merge of #30420 - petrochenkov:owned2, r=nrcManish Goregaokar-3/+2
Part of https://github.com/rust-lang/rust/pull/30095 not causing mysterious segfaults. r? @nrc
2015-12-18Deprecate name `OwnedSlice` and don't use itVadim Petrochenkov-3/+2
2015-12-17move error handling from libsyntax/diagnostics.rs to libsyntax/errors/*Nick Cameron-3/+3
Also split out emitters into their own module.
2015-12-16Implement type ascription.Eduard Burtescu-1/+6
2015-12-16Rollup merge of #30388 - DanielJCampbell:macro-ident-spans, r=nrcManish Goregaokar-1/+1
r? @nrc
2015-12-15Generated code spans now point to callsite parameters (where applicable)Daniel Campbell-1/+1