private function getCodegenFile()

in src/RequestParametersCodegenBuilderBase.hack [70:88]


  private function getCodegenFile(
    string $path,
    self::TSpec $spec,
  ): CodegenFile {
    $file = ($this->cg->codegenFile($path)
      ->setDoClobber($this->discardChanges)
      ->setFileType(CodegenFileType::HACK_STRICT)
      ->setGeneratedFrom($this->generatedFrom)
      ->addClass($this->getCodegenClass($spec))
    );
    $namespace = Shapes::idx($spec, 'namespace');
    if ($namespace !== null) {
      $file->setNamespace($namespace);
    }
    if (Shapes::idx($spec, 'trait')) {
      $file->addTrait($this->getCodegenTrait($spec));
    }
    return $file;
  }