aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_mbe/src/tests.rs
diff options
context:
space:
mode:
authorbors[bot] <bors[bot]@users.noreply.github.com>2019-05-04 13:17:13 +0100
committerbors[bot] <bors[bot]@users.noreply.github.com>2019-05-04 13:17:13 +0100
commitdc666c81011ddeebcb0219a49fe027f6d5d6d1a4 (patch)
tree70ad1f2bcf142e709c5ad5fcb76b46488ad288aa /crates/ra_mbe/src/tests.rs
parent8ee8542de23253ec29f1b817aeb975313875885d (diff)
parent036141663bd934da451461dbc47dc836c432e057 (diff)
Merge #1230
1230: Desugar doc comments to `#[doc = "...."]` attributes in `syntax node` to tt conversion r=matklad a=edwin0cheng As discussed in [Zulip](https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/MBE.20discussion/near/164446835), this PR desugar doc comments to `#[doc = "...."]` in `syntax node` to tt conversion. Note that after this PR, all obvious mbe bugs in dogfooding are fixed. (i.e. No parsing or expanding mbe error in `env RUST_LOG=ra_hir=WARN target\release\ra_cli.exe analysis-stats`) 🎉 Co-authored-by: Edwin Cheng <[email protected]>
Diffstat (limited to 'crates/ra_mbe/src/tests.rs')
-rw-r--r--crates/ra_mbe/src/tests.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/crates/ra_mbe/src/tests.rs b/crates/ra_mbe/src/tests.rs
index bd5a44240..c487bbbd4 100644
--- a/crates/ra_mbe/src/tests.rs
+++ b/crates/ra_mbe/src/tests.rs
@@ -868,6 +868,31 @@ fn test_meta() {
868} 868}
869 869
870#[test] 870#[test]
871fn test_meta_doc_comments() {
872 let rules = create_rules(
873 r#"
874 macro_rules! foo {
875 ($(#[$ i:meta])+) => (
876 $(#[$ i])+
877 fn bar() {}
878 )
879 }
880"#,
881 );
882 assert_expansion(
883 MacroKind::Items,
884 &rules,
885 r#"foo! {
886 /// Single Line Doc 1
887 /**
888 MultiLines Doc
889 */
890 }"#,
891 "# [doc = \" Single Line Doc 1\"] # [doc = \" \\\\n MultiLines Doc\\\\n \"] fn bar () {}",
892 );
893}
894
895#[test]
871fn test_tt_block() { 896fn test_tt_block() {
872 let rules = create_rules( 897 let rules = create_rules(
873 r#" 898 r#"