original_string: public function start($name)
      {
          if (\in_array($name, $this->openSlots)) {
              throw new \InvalidArgumentException(sprintf('A slot named "%s" is already started.', $name));
          }
  
          $this->openSlots[] = $name;
          $this->slots[$name] = '';
  
          ob_start();
          ob_implicit_flush(0);
      }
code: public function start($name)
      {
          if (\in_array($name, $this->openSlots)) {
              throw new \InvalidArgumentException(sprintf('A slot named "%s" is already started.', $name));
          }
  
          $this->openSlots[] = $name;
          $this->slots[$name] = '';
  
          ob_start();
          ob_implicit_flush(0);
      }
code_tokens: public function start ( $ name ) { if ( \ in_array ( $ name , $ this -> openSlots ) ) { throw new \ InvalidArgumentException ( sprintf ( 'A slot named "%s" is already started.' , $ name ) ) ; } $ this -> openSlots [ ] = $ name ; $ this -> slots [ $ name ] = '' ; ob_start ( ) ; ob_implicit_flush ( 0 ) ; }
docstring: Starts a new slot.
  
  This method starts an output buffer that will be
  closed when the stop() method is called.
  
  @param string $name The slot name
  
  @throws \InvalidArgumentException if a slot with the same name is already started
docstring_tokens: Starts a new slot .