docs: public Links merge(MergeMode mode, Iterable<Link> links) {
  
  		Assert.notNull(mode, "MergeMode must not be null!");
  		Assert.notNull(links, "Links must not be null!");
  
  		List<Link> newLinks = MergeMode.REPLACE_BY_REL.equals(mode) //
  				? allWithoutRels(links)
  				: new ArrayList<>(this.links);
  
  		links.forEach(it -> {
  
  			if (MergeMode.REPLACE_BY_REL.equals(mode)) {
  				newLinks.add(it);
  			}
  
  			if (MergeMode.SKIP_BY_EQUALITY.equals(mode) && !this.links.contains(it)) {
  				newLinks.add(it);
  			}
  
  			if (MergeMode.SKIP_BY_REL.equals(mode) && !this.hasLink(it.getRel())) {
  				newLinks.add(it);
  			}
  		});
  
  		return new Links(newLinks);
  	}