﻿---
BasedOnStyle: LLVM
Language: Cpp
Standard: Cpp03
SortIncludes: "true"
SortUsingDeclarations: "true"
UseTab: Never
IndentWidth: 4
IncludeBlocks: Regroup
PointerAlignment: Left
ConstructorInitializerAllOnOneLineOrOnePerLine: true
FixNamespaceComments: true
AccessModifierOffset: -4
AllowShortFunctionsOnASingleLine: Empty
WhitespaceSensitiveMacros: [NW4R_UT_LIST_SAFE_FOREACH]
AttributeMacros: [DECOMP_INLINE, DECOMP_DONT_INLINE]

IncludeCategories:
  - Regex:           '^<(nw4r|egg|Pack)?(\/)?types'     # "Types" headers
    Priority:        0
    CaseSensitive:   true

  - Regex:           '<egg\/[[:lower:].]+h>' # EGG public headers
    Priority:        2
    CaseSensitive:   true

  - Regex:           '<nw4r\/[[:lower:].]+h>' # NW4R public headers
    Priority:        3
    CaseSensitive:   true

  - Regex:           '^<revolution\/[[:upper:].]+h>' # RVL SDK public headers
    Priority:        4
    CaseSensitive:   true

  - Regex:           '<[[:alnum:].]+>' # STL headers
    Priority:        5                 # Priority 0 is header mapped to src file
    CaseSensitive:   true

  - Regex:           '.*' # All other headers
    Priority:        1