
Option::map, for example, looks like this: option<t>, (t -> u) -> option<u> This syntax searches all of the HOFs in Rust: traits Fn, FnOnce, and FnMut, and bare fn primitives.
376 lines
10 KiB
JavaScript
376 lines
10 KiB
JavaScript
const PARSED = [
|
|
{
|
|
query: "(-> F<P>)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "f",
|
|
fullPath: ["f"],
|
|
pathWithoutLast: [],
|
|
pathLast: "f",
|
|
generics: [
|
|
{
|
|
name: "p",
|
|
fullPath: ["p"],
|
|
pathWithoutLast: [],
|
|
pathLast: "p",
|
|
generics: [],
|
|
},
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(-> F<P>)",
|
|
returned: [],
|
|
userQuery: "(-> f<p>)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(-> P)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "p",
|
|
fullPath: ["p"],
|
|
pathWithoutLast: [],
|
|
pathLast: "p",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(-> P)",
|
|
returned: [],
|
|
userQuery: "(-> p)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(->,a)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "a",
|
|
fullPath: ["a"],
|
|
pathWithoutLast: [],
|
|
pathLast: "a",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(->,a)",
|
|
returned: [],
|
|
userQuery: "(->,a)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(F<P> ->)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [{
|
|
name: "f",
|
|
fullPath: ["f"],
|
|
pathWithoutLast: [],
|
|
pathLast: "f",
|
|
generics: [
|
|
{
|
|
name: "p",
|
|
fullPath: ["p"],
|
|
pathWithoutLast: [],
|
|
pathLast: "p",
|
|
generics: [],
|
|
},
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(F<P> ->)",
|
|
returned: [],
|
|
userQuery: "(f<p> ->)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(P ->)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [{
|
|
name: "p",
|
|
fullPath: ["p"],
|
|
pathWithoutLast: [],
|
|
pathLast: "p",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(P ->)",
|
|
returned: [],
|
|
userQuery: "(p ->)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(,a->)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [{
|
|
name: "a",
|
|
fullPath: ["a"],
|
|
pathWithoutLast: [],
|
|
pathLast: "a",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(,a->)",
|
|
returned: [],
|
|
userQuery: "(,a->)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(aaaaa->a)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [{
|
|
name: "aaaaa",
|
|
fullPath: ["aaaaa"],
|
|
pathWithoutLast: [],
|
|
pathLast: "aaaaa",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "a",
|
|
fullPath: ["a"],
|
|
pathWithoutLast: [],
|
|
pathLast: "a",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(aaaaa->a)",
|
|
returned: [],
|
|
userQuery: "(aaaaa->a)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "(aaaaa, b -> a)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [
|
|
{
|
|
name: "aaaaa",
|
|
fullPath: ["aaaaa"],
|
|
pathWithoutLast: [],
|
|
pathLast: "aaaaa",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
{
|
|
name: "b",
|
|
fullPath: ["b"],
|
|
pathWithoutLast: [],
|
|
pathLast: "b",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "a",
|
|
fullPath: ["a"],
|
|
pathWithoutLast: [],
|
|
pathLast: "a",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: -1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "(aaaaa, b -> a)",
|
|
returned: [],
|
|
userQuery: "(aaaaa, b -> a)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "primitive:(aaaaa, b -> a)",
|
|
elems: [{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [
|
|
{
|
|
name: "aaaaa",
|
|
fullPath: ["aaaaa"],
|
|
pathWithoutLast: [],
|
|
pathLast: "aaaaa",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
{
|
|
name: "b",
|
|
fullPath: ["b"],
|
|
pathWithoutLast: [],
|
|
pathLast: "b",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "a",
|
|
fullPath: ["a"],
|
|
pathWithoutLast: [],
|
|
pathLast: "a",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: 1,
|
|
}],
|
|
foundElems: 1,
|
|
original: "primitive:(aaaaa, b -> a)",
|
|
returned: [],
|
|
userQuery: "primitive:(aaaaa, b -> a)",
|
|
error: null,
|
|
},
|
|
{
|
|
query: "x, trait:(aaaaa, b -> a)",
|
|
elems: [
|
|
{
|
|
name: "x",
|
|
fullPath: ["x"],
|
|
pathWithoutLast: [],
|
|
pathLast: "x",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
{
|
|
name: "->",
|
|
fullPath: ["->"],
|
|
pathWithoutLast: [],
|
|
pathLast: "->",
|
|
generics: [
|
|
{
|
|
name: "aaaaa",
|
|
fullPath: ["aaaaa"],
|
|
pathWithoutLast: [],
|
|
pathLast: "aaaaa",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
{
|
|
name: "b",
|
|
fullPath: ["b"],
|
|
pathWithoutLast: [],
|
|
pathLast: "b",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
},
|
|
],
|
|
bindings: [
|
|
[
|
|
"output",
|
|
[{
|
|
name: "a",
|
|
fullPath: ["a"],
|
|
pathWithoutLast: [],
|
|
pathLast: "a",
|
|
generics: [],
|
|
typeFilter: -1,
|
|
}],
|
|
],
|
|
],
|
|
typeFilter: 10,
|
|
}
|
|
],
|
|
foundElems: 2,
|
|
original: "x, trait:(aaaaa, b -> a)",
|
|
returned: [],
|
|
userQuery: "x, trait:(aaaaa, b -> a)",
|
|
error: null,
|
|
},
|
|
];
|