Page callback: Generates representations of a book page and its children.
The function delegates the generation of output to helper functions. The function name is derived by prepending 'book_export_' to the given output type. So, e.g., a type of 'html' results in a call to the function book_export_html().
$type: A string encoding the type of output requested. The following types are currently supported in book module:
Other types may be supported in contributed modules.
\Drupal\node\Plugin\Core\Entity\EntityInterface $node: The node to export.
A string representing the node and its children in the book hierarchy in a format determined by the $type parameter.
\Symfony\Component\HttpKernel\Exception\NotFoundHttpException
function book_export($type, EntityInterface $node) {
  $type = drupal_strtolower($type);
  $export_function = 'book_export_' . $type;
  if (function_exists($export_function)) {
    print call_user_func($export_function, $node);
  }
  else {
    drupal_set_message(t('Unknown export format.'));
    throw new NotFoundHttpException();
  }
}