original_string: private function recursiveToc(Toc &$toc, $src, array $headers){
  		foreach( $headers as $id => $header ){
  			$child = $toc->addChild($header['content'], $src.'#'.$id);
  			if( $header['children'] ){
  				$this->recursiveToc($child, $src, $header['children']);
  			}
  		}
  	}
code: private function recursiveToc(Toc &$toc, $src, array $headers){
  		foreach( $headers as $id => $header ){
  			$child = $toc->addChild($header['content'], $src.'#'.$id);
  			if( $header['children'] ){
  				$this->recursiveToc($child, $src, $header['children']);
  			}
  		}
  	}
code_tokens: private function recursiveToc ( Toc & $ toc , $ src , array $ headers ) { foreach ( $ headers as $ id => $ header ) { $ child = $ toc -> addChild ( $ header [ 'content' ] , $ src . '#' . $ id ) ; if ( $ header [ 'children' ] ) { $ this -> recursiveToc ( $ child , $ src , $ header [ 'children' ] ) ; } } }
docstring: Recursively add toc
  
  @param Toc $toc
  @param string $src
  @param array $headers
docstring_tokens: Recursively add toc