protected function getCache()

in src/HHClientFallbackHandler.hack [40:66]


  protected function getCache(): ?self::TCache {
    $key = __CLASS__.'!cache';
    if (\apc_exists($key)) {
      $success = false;
      $data = \apc_fetch($key, inout $success);
      if (!$success) {
        return null;
      }
      return $data;
    }
    $file = $this->getCacheFilePath();
    if (!\file_exists($file)) {
      return null;
    }

    $data = \json_decode(
      \file_get_contents($file),
      /* as array = */ true,
    );
    if ($data === null) {
      $this->dirty = true;
      \unlink($file);
      return null;
    }

    return $data;
  }