public function appendToBuilder()

in src/CodegenEnum.hack [76:104]


  public function appendToBuilder(HackBuilder $builder): HackBuilder {
    if ($this->docBlock is nonnull) {
      $builder->ensureEmptyLine()->addDocBlock($this->docBlock);
    }
    $builder
      ->ensureEmptyLine()
      ->addLine($this->renderAttributes())
      ->ensureNewLine()
      ->addWithSuggestedLineBreaksf(
      '%s%s%s {',
      'enum '.$this->name,
      HackBuilder::DELIMITER.': '.$this->enumType,
      $this->isAs !== null ? HackBuilder::DELIMITER.'as '.$this->isAs : '',
    );

    if (!C\is_empty($this->members)) {
      $builder->ensureNewLine();
      $builder->indent();
      foreach ($this->members as $m) {
        $m->appendToBuilder($builder);
      }
      $builder->unindent();
    }

    $builder->ensureNewLine();
    $builder->addLine('}');

    return $builder;
  }