mirror of
				https://git.proxmox.com/git/mirror_frr
				synced 2025-11-03 23:47:16 +00:00 
			
		
		
		
	RB-tree and double-linked-list easily support backwards iteration, and an use case seems to have popped up. Let's make it accessible. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
		
			
				
	
	
		
			79 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
BasedOnStyle: LLVM
 | 
						|
Language: Cpp
 | 
						|
IndentWidth: 8
 | 
						|
UseTab: Always
 | 
						|
BreakBeforeBraces: Linux
 | 
						|
AlwaysBreakBeforeMultilineStrings: true
 | 
						|
AllowShortIfStatementsOnASingleLine: false
 | 
						|
AllowShortLoopsOnASingleLine: false
 | 
						|
AllowShortFunctionsOnASingleLine: false
 | 
						|
IndentCaseLabels: false
 | 
						|
AlignEscapedNewlinesLeft: false
 | 
						|
AlignTrailingComments: true
 | 
						|
AllowAllParametersOfDeclarationOnNextLine: false
 | 
						|
AlignAfterOpenBracket: true
 | 
						|
SpaceAfterCStyleCast: false
 | 
						|
MaxEmptyLinesToKeep: 2
 | 
						|
BreakBeforeBinaryOperators: None
 | 
						|
BreakStringLiterals: false
 | 
						|
SortIncludes:    false
 | 
						|
IncludeCategories:
 | 
						|
  - Regex:           '^(<|lib)'
 | 
						|
    Priority:        0
 | 
						|
CommentPragmas: '\$(FRR|clippy)'
 | 
						|
ContinuationIndentWidth: 8
 | 
						|
ForEachMacros:
 | 
						|
  # lib
 | 
						|
  - frr_each
 | 
						|
  - frr_each_safe
 | 
						|
  - frr_each_from
 | 
						|
  - frr_rev_each
 | 
						|
  - frr_rev_each_safe
 | 
						|
  - frr_rev_each_from
 | 
						|
  - frr_with_mutex
 | 
						|
  - frr_with_privs
 | 
						|
  - LIST_FOREACH
 | 
						|
  - LIST_FOREACH_SAFE
 | 
						|
  - SLIST_FOREACH
 | 
						|
  - SLIST_FOREACH_SAFE
 | 
						|
  - SLIST_FOREACH_PREVPTR
 | 
						|
  - STAILQ_FOREACH
 | 
						|
  - STAILQ_FOREACH_SAFE
 | 
						|
  - TAILQ_FOREACH
 | 
						|
  - TAILQ_FOREACH_SAFE
 | 
						|
  - TAILQ_FOREACH_REVERSE
 | 
						|
  - TAILQ_FOREACH_REVERSE_SAFE
 | 
						|
  - RB_FOREACH
 | 
						|
  - RB_FOREACH_SAFE
 | 
						|
  - RB_FOREACH_REVERSE
 | 
						|
  - RB_FOREACH_REVERSE_SAFE
 | 
						|
  - SPLAY_FOREACH
 | 
						|
  - FOR_ALL_INTERFACES
 | 
						|
  - FOR_ALL_INTERFACES_ADDRESSES
 | 
						|
  - JSON_FOREACH
 | 
						|
  # libyang
 | 
						|
  - LY_FOR_KEYS
 | 
						|
  - LY_LIST_FOR
 | 
						|
  - LY_TREE_FOR
 | 
						|
  - LY_TREE_DFS_BEGIN
 | 
						|
  - LYD_TREE_DFS_BEGIN
 | 
						|
  # zebra
 | 
						|
  - RE_DEST_FOREACH_ROUTE
 | 
						|
  - RE_DEST_FOREACH_ROUTE_SAFE
 | 
						|
  - RNODE_FOREACH_RE
 | 
						|
  - RNODE_FOREACH_RE_SAFE
 | 
						|
  # bgpd
 | 
						|
  - UPDGRP_FOREACH_SUBGRP
 | 
						|
  - UPDGRP_FOREACH_SUBGRP_SAFE
 | 
						|
  - SUBGRP_FOREACH_PEER
 | 
						|
  - SUBGRP_FOREACH_PEER_SAFE
 | 
						|
  - SUBGRP_FOREACH_ADJ
 | 
						|
  - SUBGRP_FOREACH_ADJ_SAFE
 | 
						|
  - AF_FOREACH
 | 
						|
  - FOREACH_AFI_SAFI
 | 
						|
  - FOREACH_AFI_SAFI_NSF
 | 
						|
  - FOREACH_SAFI
 | 
						|
  # ospfd
 | 
						|
  - LSDB_LOOP
 |