original_string: public function copy($type = null)
      {
          $builder = new Builder($this->type, $this->dogmatist, $this->parent, $this->strict);
          $this->copyData($builder);
  
          if ($type !== null) {
              $builder->setType($type);
          }
  
          return $builder;
      }
code: public function copy($type = null)
      {
          $builder = new Builder($this->type, $this->dogmatist, $this->parent, $this->strict);
          $this->copyData($builder);
  
          if ($type !== null) {
              $builder->setType($type);
          }
  
          return $builder;
      }
code_tokens: public function copy ( $ type = null ) { $ builder = new Builder ( $ this -> type , $ this -> dogmatist , $ this -> parent , $ this -> strict ) ; $ this -> copyData ( $ builder ) ; if ( $ type !== null ) { $ builder -> setType ( $ type ) ; } return $ builder ; }
docstring: Returns a clone for the current builder
  @param string $type The new type of the cloned builder.
  @return $this
docstring_tokens: Returns a clone for the current builder