| # SPDX-License-Identifier: Apache-2.0 | 
 | # | 
 | # Note: The list of ForEachMacros can be obtained using: | 
 | # | 
 | #    git grep -h '^#define [^[:space:]]*FOR_EACH[^[:space:]]*(' include/ \ | 
 | #    | sed "s,^#define \([^[:space:]]*FOR_EACH[^[:space:]]*\)(.*$,  - '\1'," \ | 
 | #    | sort | uniq | 
 | # | 
 | # References: | 
 | #   - https://clang.llvm.org/docs/ClangFormatStyleOptions.html | 
 |  | 
 | --- | 
 | BasedOnStyle: LLVM | 
 | AlignConsecutiveMacros: AcrossComments | 
 | AllowShortBlocksOnASingleLine: Never | 
 | AllowShortCaseLabelsOnASingleLine: false | 
 | AllowShortEnumsOnASingleLine: false | 
 | AllowShortFunctionsOnASingleLine: None | 
 | AllowShortIfStatementsOnASingleLine: false | 
 | AllowShortLoopsOnASingleLine: false | 
 | AttributeMacros: | 
 |   - __aligned | 
 |   - __deprecated | 
 |   - __packed | 
 |   - __printf_like | 
 |   - __syscall | 
 |   - __syscall_always_inline | 
 |   - __subsystem | 
 | BitFieldColonSpacing: After | 
 | BreakBeforeBraces: Linux | 
 | ColumnLimit: 100 | 
 | ConstructorInitializerIndentWidth: 8 | 
 | ContinuationIndentWidth: 8 | 
 | ForEachMacros: | 
 |   - 'ARRAY_FOR_EACH' | 
 |   - 'ARRAY_FOR_EACH_PTR' | 
 |   - 'FOR_EACH' | 
 |   - 'FOR_EACH_FIXED_ARG' | 
 |   - 'FOR_EACH_IDX' | 
 |   - 'FOR_EACH_IDX_FIXED_ARG' | 
 |   - 'FOR_EACH_NONEMPTY_TERM' | 
 |   - 'FOR_EACH_FIXED_ARG_NONEMPTY_TERM' | 
 |   - 'RB_FOR_EACH' | 
 |   - 'RB_FOR_EACH_CONTAINER' | 
 |   - 'SYS_DLIST_FOR_EACH_CONTAINER' | 
 |   - 'SYS_DLIST_FOR_EACH_CONTAINER_SAFE' | 
 |   - 'SYS_DLIST_FOR_EACH_NODE' | 
 |   - 'SYS_DLIST_FOR_EACH_NODE_SAFE' | 
 |   - 'SYS_SEM_LOCK' | 
 |   - 'SYS_SFLIST_FOR_EACH_CONTAINER' | 
 |   - 'SYS_SFLIST_FOR_EACH_CONTAINER_SAFE' | 
 |   - 'SYS_SFLIST_FOR_EACH_NODE' | 
 |   - 'SYS_SFLIST_FOR_EACH_NODE_SAFE' | 
 |   - 'SYS_SLIST_FOR_EACH_CONTAINER' | 
 |   - 'SYS_SLIST_FOR_EACH_CONTAINER_SAFE' | 
 |   - 'SYS_SLIST_FOR_EACH_NODE' | 
 |   - 'SYS_SLIST_FOR_EACH_NODE_SAFE' | 
 |   - '_WAIT_Q_FOR_EACH' | 
 |   - 'Z_FOR_EACH' | 
 |   - 'Z_FOR_EACH_ENGINE' | 
 |   - 'Z_FOR_EACH_EXEC' | 
 |   - 'Z_FOR_EACH_FIXED_ARG' | 
 |   - 'Z_FOR_EACH_FIXED_ARG_EXEC' | 
 |   - 'Z_FOR_EACH_IDX' | 
 |   - 'Z_FOR_EACH_IDX_EXEC' | 
 |   - 'Z_FOR_EACH_IDX_FIXED_ARG' | 
 |   - 'Z_FOR_EACH_IDX_FIXED_ARG_EXEC' | 
 |   - 'Z_GENLIST_FOR_EACH_CONTAINER' | 
 |   - 'Z_GENLIST_FOR_EACH_CONTAINER_SAFE' | 
 |   - 'Z_GENLIST_FOR_EACH_NODE' | 
 |   - 'Z_GENLIST_FOR_EACH_NODE_SAFE' | 
 |   - 'STRUCT_SECTION_FOREACH' | 
 |   - 'STRUCT_SECTION_FOREACH_ALTERNATE' | 
 |   - 'TYPE_SECTION_FOREACH' | 
 |   - 'K_SPINLOCK' | 
 |   - 'COAP_RESOURCE_FOREACH' | 
 |   - 'COAP_SERVICE_FOREACH' | 
 |   - 'COAP_SERVICE_FOREACH_RESOURCE' | 
 |   - 'HTTP_RESOURCE_FOREACH' | 
 |   - 'HTTP_SERVER_CONTENT_TYPE_FOREACH' | 
 |   - 'HTTP_SERVICE_FOREACH' | 
 |   - 'HTTP_SERVICE_FOREACH_RESOURCE' | 
 |   - 'I3C_BUS_FOR_EACH_I3CDEV' | 
 |   - 'I3C_BUS_FOR_EACH_I2CDEV' | 
 |   - 'MIN_HEAP_FOREACH' | 
 | IfMacros: | 
 |   - 'CHECKIF' | 
 | # Disabled for now, see bug https://github.com/zephyrproject-rtos/zephyr/issues/48520 | 
 | #IncludeBlocks: Regroup | 
 | IncludeCategories: | 
 |   - Regex: '^".*\.h"$' | 
 |     Priority: 0 | 
 |   - Regex: '^<(assert|complex|ctype|errno|fenv|float|inttypes|limits|locale|math|setjmp|signal|stdarg|stdbool|stddef|stdint|stdio|stdlib|string|tgmath|time|wchar|wctype)\.h>$' | 
 |     Priority: 1 | 
 |   - Regex: '^\<zephyr/.*\.h\>$' | 
 |     Priority: 2 | 
 |   - Regex: '.*' | 
 |     Priority: 3 | 
 | IndentCaseLabels: false | 
 | IndentGotoLabels: false | 
 | IndentWidth: 8 | 
 | InsertBraces: true | 
 | InsertNewlineAtEOF: true | 
 | SpaceBeforeInheritanceColon: False | 
 | SpaceBeforeParens: ControlStatementsExceptControlMacros | 
 | SortIncludes: Never | 
 | UseTab: ForContinuationAndIndentation | 
 | WhitespaceSensitiveMacros: | 
 |   - COND_CODE_0 | 
 |   - COND_CODE_1 | 
 |   - IF_DISABLED | 
 |   - IF_ENABLED | 
 |   - LISTIFY | 
 |   - STRINGIFY | 
 |   - Z_STRINGIFY | 
 |   - DT_FOREACH_PROP_ELEM_SEP |