code: function checkBrokenLinks(docs, apis, options) {
    var byFullId = Object.create(null);
  
    docs.forEach(function(doc) {
      byFullId[doc.section + '/' + doc.id] = doc;
      if (apis[doc.section]) {
        doc.anchors.push('directive', 'service', 'filter', 'function');
      }
    });
  
    docs.forEach(function(doc) {
      doc.links.forEach(function(link) {
        if (options && !options.html5Mode) {
          link = link.substring(2);
        }
        // convert #id to path#id
        if (link[0] == '#') {
          link = doc.section + '/' + doc.id.split('#').shift() + link;
        }
  
        var parts = link.split('#');
        var pageLink = parts[0];
        var anchorLink = parts[1];
        var linkedPage = byFullId[pageLink];
  
        if (!linkedPage) {
          console.log('WARNING: ' + doc.section + '/' + doc.id + ' (defined in ' + doc.file + ') points to a non existing page "' + link + '"!');
        } else if (anchorLink && linkedPage.anchors.indexOf(anchorLink) === -1) {
          console.log('WARNING: ' + doc.section + '/' + doc.id + ' (defined in ' + doc.file + ') points to a non existing anchor "' + link + '"!');
        }
      });
    });
  }
docs: ////////////////////////////////////////////////////////