Language: Cpp
# BasedOnStyle:  Google
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
# AlignArrayOfStructures: Left
AlignConsecutiveMacros: None
AlignConsecutiveAssignments: None
AlignConsecutiveBitFields: None
AlignConsecutiveDeclarations: None
AlignEscapedNewlines: DontAlign
AlignOperands: Align
AlignTrailingComments: true
#AllowAllArgumentsOnNextLine: true
#AllowAllConstructorInitializersOnNextLine: true
#AllowAllParametersOfDeclarationOnNextLine: true
AllowShortEnumsOnASingleLine: true
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: InlineOnly
#AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: AllIfsAndElse
AllowShortLoopsOnASingleLine: false
#AlwaysBreakAfterDefinitionReturnType: None
#AlwaysBreakAfterReturnType: None
#AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: Yes
#AttributeMacros:
#  - __capability
#BinPackArguments: true
#BinPackParameters: true
BraceWrapping:
    AfterCaseLabel: true
    AfterClass: true
    AfterControlStatement: Always
    AfterEnum: true
    AfterFunction: true
    AfterNamespace: true
    AfterObjCDeclaration: true
    AfterStruct: true
    AfterUnion: true
    AfterExternBlock: false
    BeforeCatch: true
    BeforeElse: true
    BeforeLambdaBody: true
    BeforeWhile: false
    IndentBraces: false
    SplitEmptyFunction: true
    SplitEmptyRecord: true
    SplitEmptyNamespace: true
#BreakBeforeBinaryOperators: None
#BreakBeforeConceptDeclarations: true
BreakBeforeBraces: Custom
#BreakBeforeInheritanceComma: false
BreakInheritanceList: AfterColon
BreakBeforeTernaryOperators: false
BreakConstructorInitializers: AfterColon
#BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: false
ColumnLimit: 120
#CommentPragmas:  '^ IWYU pragma:'
#CompactNamespaces: false
ConstructorInitializerIndentWidth: 8
ContinuationIndentWidth: 4
#Cpp11BracedListStyle: true
#DeriveLineEnding: true
DerivePointerAlignment: false
#DisableFormat:   false
#EmptyLineAfterAccessModifier: Never
#EmptyLineBeforeAccessModifier: LogicalBlock
#ExperimentalAutoDetectBinPacking: false
#FixNamespaceComments: true
#ForEachMacros:
#  - foreach
#  - Q_FOREACH
#  - BOOST_FOREACH
#IfMacros:
#  - KJ_IF_MAYBE
IncludeBlocks: Regroup
IncludeCategories:
-   Regex: \"common/common.hpp\"
    Priority: 1
    SortPriority: 0
    CaseSensitive: false
-   Regex: \"common/logging.hpp\"
    Priority: 1
    SortPriority: 1
    CaseSensitive: false
#-   Regex: \"common/.*\.hpp\"
#    Priority: 1
#    SortPriority: 2
#    CaseSensitive: false
-   Regex: \".*\.hpp\"
    Priority: 2
    SortPriority: 3
    CaseSensitive: false
-   Regex: ^<ext/.*\.h>
    Priority: 3
    SortPriority: 4
    CaseSensitive: false
-   Regex: ^<.*\.h>
    Priority: 3
    SortPriority: 5
    CaseSensitive: false
-   Regex: ^<.*
    Priority: 3
    SortPriority: 6
    CaseSensitive: false
#IncludeIsMainRegex: '([-_](test|unittest))?$'
#IncludeIsMainSourceRegex: ''
#IndentAccessModifiers: false
IndentCaseLabels: true
#IndentCaseBlocks: false
#IndentGotoLabels: true
IndentPPDirectives: None
IndentExternBlock: AfterExternBlock
#IndentRequires:  false
IndentWidth: 4
#IndentWrappedFunctionNames: false
#InsertTrailingCommas: None
#JavaScriptQuotes: Leave
#JavaScriptWrapImports: true
#KeepEmptyLinesAtTheStartOfBlocks: false
#LambdaBodyIndentation: Signature / OuterScope
MacroBlockBegin: ^BEGIN_FIELD_TABLE|^BEGIN_ENUM_TABLE
MacroBlockEnd: ^END_FIELD_TABLE|^END_ENUM_TABLE
MaxEmptyLinesToKeep: 3
#NamespaceIndentation: None
#ObjCBinPackProtocolList: Never
#ObjCBlockIndentWidth: 2
#ObjCBreakBeforeNestedBlockParam: true
#ObjCSpaceAfterProperty: false
#ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 350
PenaltyBreakBeforeFirstCallParameter: 10
PenaltyBreakComment: 10
PenaltyBreakFirstLessLess: 10
PenaltyBreakString: 100
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 10
PenaltyReturnTypeOnItsOwnLine: 1000
PenaltyIndentedWhitespace: 250
PointerAlignment: Right
#PPIndentWidth:   -1
#RawStringFormats:
#  - Language:        Cpp
#    Delimiters:
#      - cc
#      - CC
#      - cpp
#      - Cpp
#      - CPP
#      - 'c++'
#      - 'C++'
#    CanonicalDelimiter: ''
#    BasedOnStyle:    google
#  - Language:        TextProto
#    Delimiters:
#      - pb
#      - PB
#      - proto
#      - PROTO
#    EnclosingFunctions:
#      - EqualsProto
#      - EquivToProto
#      - PARSE_PARTIAL_TEXT_PROTO
#      - PARSE_TEST_PROTO
#      - PARSE_TEXT_PROTO
#      - ParseTextOrDie
#      - ParseTextProtoOrDie
#      - ParseTestProto
#      - ParsePartialTestProto
#    CanonicalDelimiter: pb
#    BasedOnStyle:    google
#ReferenceAlignment: Pointer
#ReflowComments:  true
ShortNamespaceLines: 1
SortIncludes: CaseInsensitive
#SortJavaStaticImport: Before
#SortUsingDeclarations: true
#SpaceAfterCStyleCast: false
#SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: false
#SpaceBeforeAssignmentOperators: true
#SpaceBeforeCaseColon: false
#SpaceBeforeCpp11BracedList: false
#SpaceBeforeCtorInitializerColon: true
#SpaceBeforeInheritanceColon: true
#SpaceBeforeParens: ControlStatements
#SpaceAroundPointerQualifiers: Default
#SpaceBeforeRangeBasedForLoopColon: true
#SpaceInEmptyBlock: false
#SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
#SpacesInAngles:  Never
SpacesInConditionalStatement: true
#SpacesInContainerLiterals: true
#SpacesInCStyleCastParentheses: false
SpacesInLineCommentPrefix:
    Minimum: 1
    Maximum: -1
#SpacesInParentheses: false
#SpacesInSquareBrackets: false
#SpaceBeforeSquareBrackets: false
BitFieldColonSpacing: None
#Standard:        Auto
StatementAttributeLikeMacros:
-   DLL_EXPORT
-   DLL_IMPORT
StatementMacros: [LOG_PRINT, LOG_WARN, LOG_ERROR, DECLARE_ENUM_AS_FLAGS, REGOR_FIELD_TYPE]
TabWidth: 4
#UseCRLF:         false
#UseTab:          Never
WhitespaceSensitiveMacros:
-   MACRO_CONCAT
