code: private function write($str)
      {
          $this->source .= $this->indentation;
          if (func_num_args() == 1) {
              $this->source .= $str . "\n";
              return $this;
          }
          $this->source .= vsprintf($str, array_slice(func_get_args(), 1)) . "\n";
          return $this;
      }
docs: Writes the given line of source code. Pass positional arguments to write
  that match the format of sprintf.
  
  @param string $str String to write
  @return $this