rustdoc: search for tuples and unit by type with ()
This commit is contained in:
parent
a75fed74b6
commit
f6a045cc6b
9 changed files with 616 additions and 54 deletions
80
tests/rustdoc-js/tuple-unit.js
Normal file
80
tests/rustdoc-js/tuple-unit.js
Normal file
|
@ -0,0 +1,80 @@
|
|||
// exact-check
|
||||
|
||||
const EXPECTED = [
|
||||
{
|
||||
'query': '()',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'side_effect' },
|
||||
{ 'path': 'tuple_unit', 'name': 'one' },
|
||||
{ 'path': 'tuple_unit', 'name': 'two' },
|
||||
{ 'path': 'tuple_unit', 'name': 'nest' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': 'primitive:unit',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'side_effect' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': 'primitive:tuple',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'one' },
|
||||
{ 'path': 'tuple_unit', 'name': 'two' },
|
||||
{ 'path': 'tuple_unit', 'name': 'nest' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(P)',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'not_tuple' },
|
||||
{ 'path': 'tuple_unit', 'name': 'one' },
|
||||
{ 'path': 'tuple_unit', 'name': 'two' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(P,)',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'one' },
|
||||
{ 'path': 'tuple_unit', 'name': 'two' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(P, P)',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'two' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(P, ())',
|
||||
'returned': [],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(Q, ())',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'nest' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(R)',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'nest' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
{
|
||||
'query': '(u32)',
|
||||
'returned': [
|
||||
{ 'path': 'tuple_unit', 'name': 'nest' },
|
||||
],
|
||||
'in_args': [],
|
||||
},
|
||||
];
|
18
tests/rustdoc-js/tuple-unit.rs
Normal file
18
tests/rustdoc-js/tuple-unit.rs
Normal file
|
@ -0,0 +1,18 @@
|
|||
pub struct P;
|
||||
pub struct Q;
|
||||
pub struct R<T>(T);
|
||||
|
||||
// Checks that tuple and unit both work
|
||||
pub fn side_effect() { }
|
||||
|
||||
// Check a non-tuple
|
||||
pub fn not_tuple() -> P { loop {} }
|
||||
|
||||
// Check a 1-tuple
|
||||
pub fn one() -> (P,) { loop {} }
|
||||
|
||||
// Check a 2-tuple
|
||||
pub fn two() -> (P,P) { loop {} }
|
||||
|
||||
// Check a nested tuple
|
||||
pub fn nest() -> (Q, R<(u32,)>) { loop {} }
|
Loading…
Add table
Add a link
Reference in a new issue