mirror of
https://git.FreeBSD.org/src.git
synced 2024-11-23 07:31:31 +00:00
71167bd597
This depends on https://reviews.llvm.org/D90246 to have any effect, but once that has landed clang-format will no longer format code like this: ``` int myfunction( int param1, int param2, int param2) { ... } ``` and instead create the following: ``` int myfunction(int param1, int param2, int param2) { ... } ``` Reviewed By: emaste, cem Differential Revision: https://reviews.freebsd.org/D26978
195 lines
4.6 KiB
YAML
195 lines
4.6 KiB
YAML
# $FreeBSD$
|
|
# Basic .clang-format
|
|
---
|
|
BasedOnStyle: WebKit
|
|
AlignAfterOpenBracket: DontAlign
|
|
AlignConsecutiveAssignments: false
|
|
AlignConsecutiveDeclarations: false
|
|
AlignEscapedNewlines: Left
|
|
AlignOperands: false
|
|
AlignTrailingComments: true
|
|
AllowAllArgumentsOnNextLine: false
|
|
AllowAllParametersOfDeclarationOnNextLine: false
|
|
AllowShortBlocksOnASingleLine: Never
|
|
AllowShortCaseLabelsOnASingleLine: false
|
|
AllowShortFunctionsOnASingleLine: InlineOnly
|
|
AllowShortIfStatementsOnASingleLine: Never
|
|
AllowShortLoopsOnASingleLine: false
|
|
AlwaysBreakAfterReturnType: TopLevelDefinitions
|
|
AlwaysBreakBeforeMultilineStrings: false
|
|
AlwaysBreakTemplateDeclarations: MultiLine
|
|
BinPackArguments: true
|
|
BinPackParameters: true
|
|
BreakBeforeBinaryOperators: None
|
|
BreakBeforeBraces: WebKit
|
|
BreakBeforeTernaryOperators: false
|
|
# TODO: BreakStringLiterals can cause very strange formatting so turn it off?
|
|
BreakStringLiterals: false
|
|
# Prefer:
|
|
# some_var = function(arg1,
|
|
# arg2)
|
|
# over:
|
|
# some_var =
|
|
# function(arg1, arg2)
|
|
PenaltyBreakAssignment: 100
|
|
# Prefer:
|
|
# some_long_function(arg1, arg2
|
|
# arg3)
|
|
# over:
|
|
# some_long_function(
|
|
# arg1, arg2, arg3)
|
|
PenaltyBreakBeforeFirstCallParameter: 100
|
|
CompactNamespaces: true
|
|
DerivePointerAlignment: false
|
|
DisableFormat: false
|
|
ForEachMacros:
|
|
- ARB_ARRFOREACH
|
|
- ARB_ARRFOREACH_REVWCOND
|
|
- ARB_ARRFOREACH_REVERSE
|
|
- ARB_FOREACH
|
|
- ARB_FOREACH_FROM
|
|
- ARB_FOREACH_SAFE
|
|
- ARB_FOREACH_REVERSE
|
|
- ARB_FOREACH_REVERSE_FROM
|
|
- ARB_FOREACH_REVERSE_SAFE
|
|
- CPU_FOREACH
|
|
- FOREACH_THREAD_IN_PROC
|
|
- FOREACH_PROC_IN_SYSTEM
|
|
- FOREACH_PRISON_CHILD
|
|
- FOREACH_PRISON_DESCENDANT
|
|
- FOREACH_PRISON_DESCENDANT_LOCKED
|
|
- FOREACH_PRISON_DESCENDANT_LOCKED_LEVEL
|
|
- MNT_VNODE_FOREACH_ALL
|
|
- MNT_VNODE_FOREACH_ACTIVE
|
|
- RB_FOREACH
|
|
- RB_FOREACH_FROM
|
|
- RB_FOREACH_SAFE
|
|
- RB_FOREACH_REVERSE
|
|
- RB_FOREACH_REVERSE_FROM
|
|
- RB_FOREACH_REVERSE_SAFE
|
|
- SLIST_FOREACH
|
|
- SLIST_FOREACH_FROM
|
|
- SLIST_FOREACH_FROM_SAFE
|
|
- SLIST_FOREACH_SAFE
|
|
- SLIST_FOREACH_PREVPTR
|
|
- SPLAY_FOREACH
|
|
- LIST_FOREACH
|
|
- LIST_FOREACH_FROM
|
|
- LIST_FOREACH_FROM_SAFE
|
|
- LIST_FOREACH_SAFE
|
|
- STAILQ_FOREACH
|
|
- STAILQ_FOREACH_FROM
|
|
- STAILQ_FOREACH_FROM_SAFE
|
|
- STAILQ_FOREACH_SAFE
|
|
- TAILQ_FOREACH
|
|
- TAILQ_FOREACH_FROM
|
|
- TAILQ_FOREACH_FROM_SAFE
|
|
- TAILQ_FOREACH_REVERSE
|
|
- TAILQ_FOREACH_REVERSE_FROM
|
|
- TAILQ_FOREACH_REVERSE_FROM_SAFE
|
|
- TAILQ_FOREACH_REVERSE_SAFE
|
|
- TAILQ_FOREACH_SAFE
|
|
- VM_MAP_ENTRY_FOREACH
|
|
- VM_PAGE_DUMP_FOREACH
|
|
IndentCaseLabels: false
|
|
IndentPPDirectives: None
|
|
Language: Cpp
|
|
NamespaceIndentation: None
|
|
PointerAlignment: Right
|
|
ContinuationIndentWidth: 4
|
|
IndentWidth: 8
|
|
TabWidth: 8
|
|
ColumnLimit: 80
|
|
UseTab: Always
|
|
SpaceAfterCStyleCast: false
|
|
IncludeBlocks: Regroup
|
|
IncludeCategories:
|
|
- Regex: '^\"opt_.*\.h\"'
|
|
Priority: 1
|
|
SortPriority: 10
|
|
- Regex: '^<sys/cdefs\.h>'
|
|
Priority: 2
|
|
SortPriority: 20
|
|
- Regex: '^<sys/types\.h>'
|
|
Priority: 2
|
|
SortPriority: 21
|
|
- Regex: '^<sys/param\.h>'
|
|
Priority: 2
|
|
SortPriority: 22
|
|
- Regex: '^<sys/systm\.h>'
|
|
Priority: 2
|
|
SortPriority: 23
|
|
- Regex: '^<sys.*/'
|
|
Priority: 2
|
|
SortPriority: 24
|
|
- Regex: '^<vm/vm\.h>'
|
|
Priority: 3
|
|
SortPriority: 30
|
|
- Regex: '^<vm/'
|
|
Priority: 3
|
|
SortPriority: 31
|
|
- Regex: '^<machine/'
|
|
Priority: 4
|
|
SortPriority: 40
|
|
- Regex: '^<(x86|amd64|i386|xen)/'
|
|
Priority: 5
|
|
SortPriority: 50
|
|
- Regex: '^<dev/'
|
|
Priority: 6
|
|
SortPriority: 60
|
|
- Regex: '^<net.*/'
|
|
Priority: 7
|
|
SortPriority: 70
|
|
- Regex: '^<protocols/'
|
|
Priority: 7
|
|
SortPriority: 71
|
|
- Regex: '^<(fs|nfs(|client|server)|ufs)/'
|
|
Priority: 8
|
|
SortPriority: 80
|
|
- Regex: '^<[^/].*\.h'
|
|
Priority: 9
|
|
SortPriority: 90
|
|
- Regex: '^\".*\.h\"'
|
|
Priority: 10
|
|
SortPriority: 100
|
|
# LLVM's header include ordering style is almost the exact opposite of ours.
|
|
# Unfortunately, they have hard-coded their preferences into clang-format.
|
|
# Clobbering this regular expression to avoid matching prevents non-system
|
|
# headers from being forcibly moved to the top of the include list.
|
|
# http://llvm.org/docs/CodingStandards.html#include-style
|
|
IncludeIsMainRegex: 'BLAH_DONT_MATCH_ANYTHING'
|
|
SortIncludes: true
|
|
KeepEmptyLinesAtTheStartOfBlocks: true
|
|
TypenameMacros:
|
|
- ARB_ELMTYPE
|
|
- ARB_HEAD
|
|
- ARB8_HEAD
|
|
- ARB16_HEAD
|
|
- ARB32_HEAD
|
|
- ARB_ENTRY
|
|
- ARB8_ENTRY
|
|
- ARB16_ENTRY
|
|
- ARB32_ENTRY
|
|
- LIST_CLASS_ENTRY
|
|
- LIST_CLASS_HEAD
|
|
- LIST_ENTRY
|
|
- LIST_HEAD
|
|
- QUEUE_TYPEOF
|
|
- RB_ENTRY
|
|
- RB_HEAD
|
|
- SLIST_CLASS_HEAD
|
|
- SLIST_CLASS_ENTRY
|
|
- SLIST_HEAD
|
|
- SLIST_ENTRY
|
|
- SMR_POINTER
|
|
- SPLAY_ENTRY
|
|
- SPLAY_HEAD
|
|
- STAILQ_CLASS_ENTRY
|
|
- STAILQ_CLASS_HEAD
|
|
- STAILQ_ENTRY
|
|
- STAILQ_HEAD
|
|
- TAILQ_CLASS_ENTRY
|
|
- TAILQ_CLASS_HEAD
|
|
- TAILQ_ENTRY
|
|
- TAILQ_HEAD
|