2023-09-22 17:27:06 -07:00
|
|
|
// exact-check
|
|
|
|
|
|
|
|
|
|
const EXPECTED = [
|
|
|
|
|
// if I just use generics, then the generics version
|
|
|
|
|
// and the type binding version both show up
|
|
|
|
|
{
|
|
|
|
|
'query': 'iterator<something> -> u32',
|
|
|
|
|
'correction': null,
|
|
|
|
|
'others': [
|
|
|
|
|
{ 'path': 'assoc_type', 'name': 'my_fn' },
|
|
|
|
|
{ 'path': 'assoc_type::my', 'name': 'other_fn' },
|
|
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
'query': 'iterator<something>',
|
|
|
|
|
'correction': null,
|
|
|
|
|
'in_args': [
|
|
|
|
|
{ 'path': 'assoc_type', 'name': 'my_fn' },
|
|
|
|
|
{ 'path': 'assoc_type::my', 'name': 'other_fn' },
|
|
|
|
|
],
|
|
|
|
|
},
|
2023-12-10 20:53:53 -07:00
|
|
|
{
|
|
|
|
|
'query': 'something',
|
|
|
|
|
'correction': null,
|
|
|
|
|
'others': [
|
|
|
|
|
{ 'path': 'assoc_type', 'name': 'Something' },
|
|
|
|
|
],
|
|
|
|
|
'in_args': [
|
|
|
|
|
{ 'path': 'assoc_type', 'name': 'my_fn' },
|
|
|
|
|
{ 'path': 'assoc_type::my', 'name': 'other_fn' },
|
|
|
|
|
],
|
|
|
|
|
},
|
2023-09-22 17:27:06 -07:00
|
|
|
// if I write an explicit binding, only it shows up
|
|
|
|
|
{
|
|
|
|
|
'query': 'iterator<item=something> -> u32',
|
|
|
|
|
'correction': null,
|
|
|
|
|
'others': [
|
|
|
|
|
{ 'path': 'assoc_type', 'name': 'my_fn' },
|
|
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
// case insensitivity
|
|
|
|
|
{
|
|
|
|
|
'query': 'iterator<ItEm=sOmEtHiNg> -> u32',
|
|
|
|
|
'correction': null,
|
|
|
|
|
'others': [
|
|
|
|
|
{ 'path': 'assoc_type', 'name': 'my_fn' },
|
|
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
// wrong binding name, no result
|
|
|
|
|
{
|
|
|
|
|
'query': 'iterator<something=something> -> u32',
|
|
|
|
|
'correction': null,
|
|
|
|
|
'in_args': [],
|
|
|
|
|
'others': [],
|
|
|
|
|
},
|
|
|
|
|
];
|