const PARSED = [ { query: '(((D, ()))', elems: [], foundElems: 0, original: '(((D, ()))', returned: [], userQuery: '(((d, ()))', error: 'Unclosed `(`', }, { query: '(((D, ())))', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [ { name: "d", fullPath: ["d"], pathWithoutLast: [], pathLast: "d", generics: [], typeFilter: -1, }, { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [], typeFilter: 1, }, ], typeFilter: 1, } ], foundElems: 1, original: '(((D, ())))', returned: [], userQuery: '(((d, ())))', error: null, }, { query: '(),u8', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [], typeFilter: 1, }, { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], foundElems: 2, original: "(),u8", returned: [], userQuery: "(),u8", error: null, }, // Parens act as grouping operators when: // - there's no commas directly nested within // - there's at least two child types (zero means unit) // - it's not tagged with a type filter // Otherwise, they represent unit and/or tuple. To search for // unit or tuple specifically, use `primitive:unit` or `primitive:tuple<...>`. { query: '(u8)', elems: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], foundElems: 1, original: "(u8)", returned: [], userQuery: "(u8)", error: null, }, { query: '(u8,)', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], typeFilter: 1, }, ], foundElems: 1, original: "(u8,)", returned: [], userQuery: "(u8,)", error: null, }, { query: '(,u8)', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], typeFilter: 1, }, ], foundElems: 1, original: "(,u8)", returned: [], userQuery: "(,u8)", error: null, }, { query: 'primitive:(u8)', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], typeFilter: 1, }, ], foundElems: 1, original: "primitive:(u8)", returned: [], userQuery: "primitive:(u8)", error: null, }, { query: '(primitive:u8)', elems: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: 1, }, ], foundElems: 1, original: "(primitive:u8)", returned: [], userQuery: "(primitive:u8)", error: null, }, { query: '(u8,u8)', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], typeFilter: 1, }, ], foundElems: 1, original: "(u8,u8)", returned: [], userQuery: "(u8,u8)", error: null, }, { query: '(u8)', elems: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [ { name: "u8", fullPath: ["u8"], pathWithoutLast: [], pathLast: "u8", generics: [], typeFilter: -1, }, ], typeFilter: -1, }, ], foundElems: 1, original: "(u8)", returned: [], userQuery: "(u8)", error: null, }, { query: '()', elems: [ { name: "()", fullPath: ["()"], pathWithoutLast: [], pathLast: "()", generics: [], typeFilter: 1, }, ], foundElems: 1, original: "()", returned: [], userQuery: "()", error: null, }, { query: '(>', elems: [], foundElems: 0, original: "(>", returned: [], userQuery: "(>", error: "Unexpected `>` after `(`", }, { query: '(<', elems: [], foundElems: 0, original: "(<", returned: [], userQuery: "(<", error: "Found generics without a path", }, { query: '(a>', elems: [], foundElems: 0, original: "(a>", returned: [], userQuery: "(a>", error: "Unexpected `>` after `(`", }, { query: '(a<', elems: [], foundElems: 0, original: "(a<", returned: [], userQuery: "(a<", error: "Unclosed `<`", }, { query: '(a', elems: [], foundElems: 0, original: "(a", returned: [], userQuery: "(a", error: "Unclosed `(`", }, { query: '(', elems: [], foundElems: 0, original: "(", returned: [], userQuery: "(", error: "Unclosed `(`", }, { query: ')', elems: [], foundElems: 0, original: ")", returned: [], userQuery: ")", error: "Unexpected `)`", }, { query: '(a', elems: [], foundElems: 0, original: "(a", returned: [], userQuery: "(a", error: "Unclosed `(`", }, { query: 'a)', elems: [], foundElems: 0, original: "a)", returned: [], userQuery: "a)", error: "Unexpected `)` after `>`", }, { query: 'macro:(u8)', elems: [], foundElems: 0, original: "macro:(u8)", returned: [], userQuery: "macro:(u8)", error: "Invalid search type: primitive `()` and `macro` both specified", }, ];