| #![warn(clippy::doc_broken_link)] | |
| fn main() {} | |
| pub struct FakeType {} | |
| /// This might be considered a link false positive | |
| /// and should be ignored by this lint rule: | |
| /// Example of referencing some code with brackets [FakeType]. | |
| pub fn doc_ignore_link_false_positive_1() {} | |
| /// This might be considered a link false positive | |
| /// and should be ignored by this lint rule: | |
| /// [`FakeType`]. Continue text after brackets, | |
| /// then (something in | |
| /// parenthesis). | |
| pub fn doc_ignore_link_false_positive_2() {} | |
| /// Test valid link, whole link single line. | |
| /// [doc valid link](https://test.fake/doc_valid_link) | |
| pub fn doc_valid_link() {} | |
| /// Test valid link, whole link single line but it has special chars such as brackets and | |
| /// parenthesis. [doc invalid link url invalid char](https://test.fake/doc_valid_link_url_invalid_char?foo[bar]=1&bar(foo)=2) | |
| pub fn doc_valid_link_url_invalid_char() {} | |
| /// Test valid link, text tag broken across multiple lines. | |
| /// [doc valid link broken | |
| /// text](https://test.fake/doc_valid_link_broken_text) | |
| pub fn doc_valid_link_broken_text() {} | |
| /// Test valid link, url tag broken across multiple lines, but | |
| /// the whole url part in a single line. | |
| /// [doc valid link broken url tag two lines first](https://test.fake/doc_valid_link_broken_url_tag_two_lines_first | |
| /// ) | |
| pub fn doc_valid_link_broken_url_tag_two_lines_first() {} | |
| /// Test valid link, url tag broken across multiple lines, but | |
| /// the whole url part in a single line. | |
| /// [doc valid link broken url tag two lines second]( | |
| /// https://test.fake/doc_valid_link_broken_url_tag_two_lines_second) | |
| pub fn doc_valid_link_broken_url_tag_two_lines_second() {} | |
| /// Test valid link, url tag broken across multiple lines, but | |
| /// the whole url part in a single line, but the closing pharentesis | |
| /// in a third line. | |
| /// [doc valid link broken url tag three lines]( | |
| /// https://test.fake/doc_valid_link_broken_url_tag_three_lines | |
| /// ) | |
| pub fn doc_valid_link_broken_url_tag_three_lines() {} | |
| /// Test invalid link, url part broken across multiple lines. | |
| /// [doc invalid link broken url scheme part](https:// | |
| /// test.fake/doc_invalid_link_broken_url_scheme_part) | |
| //~^^ ERROR: possible broken doc link: broken across multiple lines | |
| pub fn doc_invalid_link_broken_url_scheme_part() {} | |
| /// Test invalid link, url part broken across multiple lines. | |
| /// [doc invalid link broken url host part](https://test | |
| /// .fake/doc_invalid_link_broken_url_host_part) | |
| //~^^ ERROR: possible broken doc link: broken across multiple lines | |
| pub fn doc_invalid_link_broken_url_host_part() {} | |
| /// Test invalid link, for multiple urls in the same block of comment. | |
| /// There is a [fist link - invalid](https://test | |
| /// .fake) then it continues | |
| //~^^ ERROR: possible broken doc link: broken across multiple lines | |
| /// with a [second link - valid](https://test.fake/doc_valid_link) and another [third link - invalid](https://test | |
| /// .fake). It ends with another | |
| //~^^ ERROR: possible broken doc link: broken across multiple lines | |
| /// line of comment. | |
| pub fn doc_multiple_invalid_link_broken_url() {} |