1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
foo (
foobar(
foo_bar_42(
foo_generic::<T, Option<T>>()
mem::transmute::<Box<dyn FnOnce() + 'a>, Box<dyn FnOnce() + 'static>>()
fn apply<F>(f: F) where F: FnOnce() {
f();
}
----------------------------------------------------
[
["function", "foo"],
["punctuation", "("],
["function", "foobar"],
["punctuation", "("],
["function", "foo_bar_42"],
["punctuation", "("],
["function", "foo_generic"],
["punctuation", "::"],
["operator", "<"],
["class-name", "T"],
["punctuation", ","],
["class-name", "Option"],
["operator", "<"],
["class-name", "T"],
["operator", ">>"],
["punctuation", "("],
["punctuation", ")"],
["namespace", [
"mem",
["punctuation", "::"]
]],
["function", "transmute"],
["punctuation", "::"],
["operator", "<"],
["class-name", "Box"],
["operator", "<"],
["keyword", "dyn"],
["class-name", "FnOnce"],
["punctuation", "("],
["punctuation", ")"],
["operator", "+"],
["lifetime-annotation", "'a"],
["operator", ">"],
["punctuation", ","],
["class-name", "Box"],
["operator", "<"],
["keyword", "dyn"],
["class-name", "FnOnce"],
["punctuation", "("],
["punctuation", ")"],
["operator", "+"],
["lifetime-annotation", "'static"],
["operator", ">>"],
["punctuation", "("],
["punctuation", ")"],
["keyword", "fn"],
["function-definition", "apply"],
["operator", "<"],
["class-name", "F"],
["operator", ">"],
["punctuation", "("],
"f",
["punctuation", ":"],
["class-name", "F"],
["punctuation", ")"],
["keyword", "where"],
["class-name", "F"],
["punctuation", ":"],
["class-name", "FnOnce"],
["punctuation", "("],
["punctuation", ")"],
["punctuation", "{"],
["function", "f"],
["punctuation", "("],
["punctuation", ")"],
["punctuation", ";"],
["punctuation", "}"]
]
----------------------------------------------------
Checks for functions and macros.