in src/builders/FactParseScanner.hack [115:148]
public function getAutoloadMap(): AutoloadMap {
$facts = \HH\facts_parse(
$this->root,
varray($this->paths),
/* force_hh = */ false,
/* multithreaded = */ true,
);
$facts = self::untypedToShape($facts);
$classes = dict[];
$functions = dict[];
$types = dict[];
$constants = dict[];
foreach ($facts as $file => $file_facts) {
foreach ($file_facts['types'] as $type) {
$classes[\strtolower($type['name'])] = $file;
}
foreach ($file_facts['constants'] as $const) {
$constants[$const] = $file;
}
foreach ($file_facts['functions'] as $func) {
$functions[\strtolower($func)] = $file;
}
foreach ($file_facts['typeAliases'] as $alias) {
$types[\strtolower($alias)] = $file;
}
}
return dict[
'class' => $classes,
'function' => $functions,
'type' => $types,
'constant' => $constants,
];
}