anchor.diff:   *
    * [delayedLibraryList] a [List<String>] mapping to paths to libraries or some
    * combinations of [Future] or [Function] values that return a [List<String>].
  + *
  + * [postBuild] A [Function] to call before content is committed. It has the
  + * signature `Future postBuild(TaskLogger logger, String tempDocPath)`. Use this
  + * if you want to modify the doc output.
    */
   Task createDartDocTask(dynamic delayedLibraryList, {
     String targetBranch: 'gh-pages',
     String packageDir: 'packages/',
     Iterable<String> excludeLibs,
  -  bool linkApi: false}) {
  +  bool linkApi: false,
  +  Func2<TaskContext, String, Future> postBuild
  +  }) {
     requireArgumentNotNull(targetBranch, 'targetBranch');
     requireArgumentNotNull(packageDir, 'packageDir');
   
  
positive.code: part of hop_tasks;
  
  // TODO: add post-build options to pretty-up the docs
  
  const _allowDirtyArg = 'allow-dirty';
  const _targetBranchArg = 'target-branch';
  
negative.code:     targetBranch = ctx.arguments[_targetBranchArg];
  
      return _compileDocs(ctx, targetBranch, delayedLibraryList, packageDir,
          excludeLibs, linkApi, postBuild);
    },
    description: 'Generate documentation for the provided libraries.',
    config: (parser) => _dartDocParserConfig(parser, targetBranch));
  