blob: b74be267bc42f08ebf9afe8eec5cbbfe75c5a1c9 [file] [log] [blame]
# A YAML format of https://clang.llvm.org/extra/clang-tidy/.
# Prefix check with "-" to ignore.
Checks: >-
bugprone-argument-comment,
bugprone-use-after-move,
bugprone-unchecked-optional-access,
clang-analyzer-*,
clang-diagnostic-*,
darwin-*,
google-*,
modernize-use-default-member-init,
objc-*,
-objc-nsinvocation-argument-lifetime,
readability-identifier-naming,
-google-build-using-namespace,
-google-default-arguments,
-google-objc-global-variable-declaration,
-google-objc-avoid-throwing-exception,
-google-readability-casting,
-clang-analyzer-nullability.NullPassedToNonnull,
-clang-analyzer-nullability.NullablePassedToNonnull,
-clang-analyzer-nullability.NullReturnedFromNonnull,
-clang-analyzer-nullability.NullableReturnedFromNonnull,
-clang-analyzer-nullability.NullableDereferenced,
performance-for-range-copy,
performance-inefficient-vector-operation,
performance-move-const-arg,
performance-move-constructor-init,
performance-unnecessary-copy-initialization,
performance-unnecessary-value-param
CheckOptions:
- key: modernize-use-default-member-init.UseAssignment
value: true
- key: readability-identifier-naming.EnumConstantCase
value: "CamelCase"
- key: readability-identifier-naming.EnumConstantPrefix
value: "k"
- key: readability-identifier-naming.GlobalConstantCase
value: "CamelCase"
- key: readability-identifier-naming.GlobalConstantPrefix
value: "k"
- key: readability-identifier-naming.PrivateMemberCase
value: "lower_case"
- key: readability-identifier-naming.PrivateMemberSuffix
value: "_"
# Intended to include (lint) all headers except:
# ... those in ../../gen (generated files don't need to follow clang tidy)
# ... those in flutter/third_party (we didn't author this code, it's a dep)
#
# Unfortunately Clang Tidy uses an ancient version of regular expressions
# without lookaheads, so the next best thing is to write out every directory
# except third_party.
#
# If we ever add a new root directory, we'll have to update this expression.
#
# See the test in ./tools/clang_tidy/test/header_filter_regex_test.dart which
# should theoretically catch if new directories are added but this regex is not
# updated.
#
# tl;dr: I'm sorry.
HeaderFilterRegex: "[..\/]+\/flutter\/(assets|benchmarking|bin|build|ci|common|display_list|docs|examples|flow|flutter_frontend_server|flutter_vma|fml|impeller|lib|runtime|shell|skia|sky|testing|tools|vulkan|wasm|web_sdk)\/.*"