diff --git a/.clang-format b/.clang-format index a1e925d..e1dac7c 100644 --- a/.clang-format +++ b/.clang-format @@ -8,24 +8,28 @@ AlignConsecutiveAssignments: AcrossEmptyLines: false AcrossComments: false AlignCompound: false + AlignFunctionPointers: false PadOperators: true AlignConsecutiveBitFields: Enabled: false AcrossEmptyLines: false AcrossComments: false AlignCompound: false + AlignFunctionPointers: false PadOperators: true AlignConsecutiveDeclarations: Enabled: false AcrossEmptyLines: false AcrossComments: false AlignCompound: false + AlignFunctionPointers: false PadOperators: true AlignConsecutiveMacros: Enabled: false AcrossEmptyLines: false AcrossComments: false AlignCompound: false + AlignFunctionPointers: false PadOperators: true AlignConsecutiveShortCaseStatements: Enabled: false @@ -39,8 +43,10 @@ AlignTrailingComments: OverEmptyLines: 1 AllowAllArgumentsOnNextLine: true AllowAllParametersOfDeclarationOnNextLine: true +AllowBreakBeforeNoexceptSpecifier: Never AllowShortBlocksOnASingleLine: Empty AllowShortCaseLabelsOnASingleLine: false +AllowShortCompoundRequirementOnASingleLine: true AllowShortEnumsOnASingleLine: true AllowShortFunctionsOnASingleLine: All AllowShortIfStatementsOnASingleLine: WithoutElse @@ -74,6 +80,7 @@ BraceWrapping: SplitEmptyFunction: true SplitEmptyRecord: true SplitEmptyNamespace: true +BreakAdjacentStringLiterals: true BreakAfterAttributes: Never BreakAfterJavaFieldAnnotations: false BreakArrays: true @@ -163,6 +170,7 @@ PenaltyBreakBeforeFirstCallParameter: 1 PenaltyBreakComment: 300 PenaltyBreakFirstLessLess: 120 PenaltyBreakOpenParenthesis: 0 +PenaltyBreakScopeResolution: 500 PenaltyBreakString: 1000 PenaltyBreakTemplateDeclaration: 10 PenaltyExcessCharacter: 1000000 @@ -184,6 +192,7 @@ RequiresClausePosition: OwnLine RequiresExpressionIndentation: OuterScope SeparateDefinitionBlocks: Leave ShortNamespaceLines: 1 +SkipMacroDefinitionBody: false SortIncludes: CaseSensitive SortJavaStaticImport: Before SortUsingDeclarations: LexicographicNumeric @@ -205,6 +214,7 @@ SpaceBeforeParensOptions: AfterFunctionDeclarationName: false AfterIfMacros: true AfterOverloadedOperator: false + AfterPlacementOperator: true AfterRequiresInClause: true AfterRequiresInExpression: false BeforeNonEmptyParentheses: false @@ -240,3 +250,4 @@ WhitespaceSensitiveMacros: - NS_SWIFT_NAME - CF_SWIFT_NAME ... + diff --git a/.clang-tidy b/.clang-tidy index f15f170..690cac6 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -1,681 +1,376 @@ --- -Checks: 'clang-diagnostic-*,clang-analyzer-*,clang-diagnostic-*,clang-analyzer-*,clang-diagnostic-*,clang-analyzer-*,-*,google-*,modernize-*,performance-*,portability-*,readability-*,clang-diagnostic-*,clang-analyzer-*,-modernize-pass-by-value,-modernize-use-trailing-return-type,-google-readability-todo,-google-readability-braces-around-statements,-google-runtime-references,-readability-named-parameter,-readability-braces-around-statements,-readability-redundant-declaration,-readability-function-cognitive-complexity,-readability-qualified-auto,-readability-identifier-length' +Checks: 'clang-diagnostic-*,clang-analyzer-*,clang-diagnostic-*,clang-analyzer-*,clang-diagnostic-*,clang-analyzer-*,clang-diagnostic-*,clang-analyzer-*,-*,google-*,modernize-*,performance-*,portability-*,readability-*,clang-diagnostic-*,clang-analyzer-*,-modernize-pass-by-value,-modernize-use-trailing-return-type,-google-readability-todo,-google-readability-braces-around-statements,-google-runtime-references,-readability-named-parameter,-readability-braces-around-statements,-readability-redundant-declaration,-readability-function-cognitive-complexity,-readability-qualified-auto,-readability-identifier-length,-readability-static-accessed-through-instance' WarningsAsErrors: '' HeaderFilterRegex: '.*' -AnalyzeTemporaryDtors: false FormatStyle: file CheckOptions: - -- key: readability-identifier-naming.PointerParameterPrefix - value: '' -- key: readability-suspicious-call-argument.PrefixSimilarAbove - value: '30' -- key: modernize-replace-disallow-copy-and-assign-macro.MacroName - value: DISALLOW_COPY_AND_ASSIGN -- key: readability-identifier-naming.GlobalConstantIgnoredRegexp - value: '' -- key: modernize-use-auto.MinTypeNameLength - value: '5' -- key: readability-identifier-naming.VirtualMethodPrefix - value: '' -- key: readability-identifier-naming.ConstantMemberSuffix - value: '' -- key: readability-identifier-naming.ConstantParameterPrefix - value: '' -- key: readability-identifier-naming.InlineNamespacePrefix - value: '' -- key: readability-identifier-naming.GlobalConstantPointerIgnoredRegexp - value: '' -- key: readability-inconsistent-declaration-parameter-name.Strict - value: 'false' -- key: readability-identifier-naming.LocalPointerSuffix - value: '' -- key: readability-identifier-naming.StaticVariableIgnoredRegexp - value: '' -- key: readability-identifier-naming.ClassMemberSuffix - value: _ -- key: readability-identifier-naming.ConstexprFunctionSuffix - value: '' -- key: readability-suspicious-call-argument.DiceDissimilarBelow - value: '60' -- key: readability-identifier-naming.GlobalPointerIgnoredRegexp - value: '' -- key: readability-identifier-naming.TemplateTemplateParameterPrefix - value: '' -- key: readability-identifier-naming.StaticVariableCase - value: lower_case -- key: readability-suspicious-call-argument.Equality - value: 'true' -- key: readability-identifier-naming.EnumConstantSuffix - value: '' -- key: readability-identifier-naming.ParameterIgnoredRegexp - value: '' -- key: readability-identifier-naming.GlobalConstantPointerCase - value: CamelCase -- key: readability-identifier-naming.EnumConstantCase - value: CamelCase -- key: readability-identifier-naming.StaticConstantIgnoredRegexp - value: '' -- key: readability-identifier-naming.GlobalPointerSuffix - value: '' -- key: readability-identifier-naming.EnumIgnoredRegexp - value: '' -- key: readability-identifier-naming.MemberIgnoredRegexp - value: '' -- key: readability-identifier-naming.ClassMethodSuffix - value: '' -- key: readability-identifier-naming.LocalVariableCase - value: lower_case -- key: readability-identifier-naming.ValueTemplateParameterSuffix - value: '' -- key: readability-identifier-naming.ConstantMemberPrefix - value: '' -- key: modernize-use-nodiscard.ReplacementString - value: '[[nodiscard]]' -- key: modernize-loop-convert.MakeReverseRangeHeader - value: '' -- key: readability-identifier-naming.GlobalConstantSuffix - value: '' -- key: readability-identifier-naming.EnumCase - value: CamelCase -- key: readability-identifier-naming.MethodIgnoredRegexp - value: '' -- key: readability-identifier-naming.ClassMethodCase - value: lower_case -- key: readability-suspicious-call-argument.SuffixSimilarAbove - value: '30' -- key: readability-identifier-naming.LocalPointerPrefix - value: '' -- key: readability-identifier-naming.ConstexprFunctionPrefix - value: '' -- key: readability-identifier-naming.ClassMemberPrefix - value: '' -- key: readability-identifier-naming.ParameterPackCase - value: lower_case -- key: modernize-loop-convert.UseCxx20ReverseRanges - value: 'true' -- key: readability-identifier-naming.ConstantSuffix - value: '' -- key: google-readability-function-size.LineThreshold - value: '4294967295' -- key: performance-type-promotion-in-math-fn.IncludeStyle - value: llvm -- key: readability-function-cognitive-complexity.DescribeBasicIncrements - value: 'true' -- key: readability-identifier-naming.PrivateMemberSuffix - value: _ -- key: readability-identifier-naming.ClassMemberCase - value: lower_case -- key: readability-identifier-naming.EnumConstantPrefix - value: '' -- key: modernize-loop-convert.MakeReverseRangeFunction - value: '' -- key: readability-inconsistent-declaration-parameter-name.IgnoreMacros - value: 'true' -- key: readability-identifier-naming.StaticConstantSuffix - value: '' -- key: readability-identifier-naming.TypeTemplateParameterIgnoredRegexp - value: '' -- key: readability-identifier-naming.IgnoreFailedSplit - value: 'false' -- key: readability-qualified-auto.AddConstToQualified - value: 'true' -- key: readability-identifier-naming.InlineNamespaceIgnoredRegexp - value: '' -- key: readability-identifier-naming.NamespaceIgnoredRegexp - value: '' -- key: google-global-names-in-headers.HeaderFileExtensions - value: ';h;hh;hpp;hxx' -- key: readability-identifier-naming.ClassMemberIgnoredRegexp - value: '' -- key: readability-uppercase-literal-suffix.IgnoreMacros - value: 'true' -- key: modernize-make-shared.IgnoreMacros - value: 'true' -- key: readability-identifier-naming.ClassMethodPrefix - value: '' -- key: readability-identifier-naming.UnionCase - value: CamelCase -- key: performance-unnecessary-copy-initialization.AllowedTypes - value: '' -- key: readability-identifier-naming.GlobalConstantPrefix - value: '' -- key: readability-identifier-naming.ClassMethodIgnoredRegexp - value: '' -- key: readability-suspicious-call-argument.Levenshtein - value: 'true' -- key: readability-identifier-naming.GlobalFunctionSuffix - value: '' -- key: modernize-use-transparent-functors.SafeMode - value: 'false' -- key: readability-identifier-naming.ValueTemplateParameterPrefix - value: '' -- key: readability-identifier-naming.GlobalPointerPrefix - value: '' -- key: readability-identifier-naming.PrivateMethodSuffix - value: '' -- key: readability-identifier-naming.TemplateParameterSuffix - value: '' -- key: readability-identifier-naming.GlobalFunctionCase - value: lower_case -- key: readability-simplify-boolean-expr.ChainedConditionalAssignment - value: 'false' -- key: readability-identifier-naming.ParameterPackSuffix - value: '' -- key: readability-identifier-naming.ConstantPrefix - value: '' -- key: cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField - value: 'false' -- key: readability-function-size.LineThreshold - value: '4294967295' -- key: performance-inefficient-vector-operation.EnableProto - value: 'false' -- key: modernize-use-override.IgnoreDestructors - value: 'false' -- key: modernize-loop-convert.MaxCopySize - value: '16' -- key: readability-suspicious-call-argument.PrefixDissimilarBelow - value: '25' -- key: modernize-make-shared.MakeSmartPtrFunction - value: 'std::make_shared' -- key: readability-identifier-naming.StaticConstantPrefix - value: '' -- key: portability-simd-intrinsics.Suggest - value: 'false' -- key: readability-identifier-naming.ClassConstantCase - value: lower_case -- key: readability-identifier-naming.PrivateMemberPrefix - value: '' -- key: modernize-make-shared.MakeSmartPtrFunctionHeader - value: '' -- key: readability-identifier-naming.PublicMethodCase - value: lower_case -- key: readability-identifier-naming.ProtectedMethodCase - value: lower_case -- key: readability-identifier-naming.InlineNamespaceCase - value: lower_case -- key: readability-identifier-naming.LocalConstantPointerIgnoredRegexp - value: '' -- key: readability-identifier-naming.FunctionSuffix - value: '' -- key: readability-redundant-string-init.StringNames - value: '::std::basic_string_view;::std::basic_string' -- key: modernize-make-unique.IgnoreDefaultInitialization - value: 'true' -- key: modernize-use-emplace.ContainersWithPushBack - value: '::std::vector;::std::list;::std::deque' -- key: readability-magic-numbers.IgnoreBitFieldsWidths - value: 'true' -- key: readability-identifier-naming.PublicMemberSuffix - value: '' -- key: modernize-make-unique.IncludeStyle - value: llvm -- key: modernize-use-override.OverrideSpelling - value: override -- key: google-readability-function-size.NestingThreshold - value: '4294967295' -- key: readability-identifier-naming.PublicMemberCase - value: lower_case -- key: readability-suspicious-call-argument.LevenshteinDissimilarBelow - value: '50' -- key: readability-identifier-naming.ParameterPackIgnoredRegexp - value: '' -- key: readability-identifier-naming.StructSuffix - value: '' -- key: google-readability-braces-around-statements.ShortStatementLines - value: '1' -- key: readability-identifier-naming.ParameterCase - value: lower_case -- key: readability-identifier-naming.ProtectedMemberCase - value: lower_case -- key: readability-identifier-naming.LocalPointerIgnoredRegexp - value: '' -- key: readability-identifier-naming.AbstractClassSuffix - value: '' -- key: readability-identifier-naming.TypeAliasSuffix - value: '' -- key: modernize-use-emplace.IgnoreImplicitConstructors - value: 'false' -- key: google-build-namespaces.HeaderFileExtensions - value: ';h;hh;hpp;hxx' -- key: readability-identifier-naming.TypedefIgnoredRegexp - value: '' -- key: readability-identifier-naming.GlobalFunctionPrefix - value: '' -- key: readability-identifier-naming.LocalVariableSuffix - value: '' -- key: readability-suspicious-call-argument.Substring - value: 'true' -- key: modernize-use-equals-delete.IgnoreMacros - value: 'true' -- key: readability-identifier-naming.ClassIgnoredRegexp - value: '' -- key: readability-identifier-naming.GlobalFunctionIgnoredRegexp - value: '' -- key: readability-magic-numbers.IgnoreAllFloatingPointValues - value: 'false' -- key: readability-identifier-naming.TemplateParameterPrefix - value: '' -- key: readability-identifier-naming.PrivateMethodPrefix - value: '' -- key: readability-identifier-naming.ParameterPackPrefix - value: '' -- key: readability-suspicious-call-argument.Abbreviations - value: 'arr=array;cnt=count;idx=index;src=source;stmt=statement;cpy=copy;dest=destination;dist=distancedst=distance;ptr=pointer;wdth=width;str=string;ln=line;srv=server;attr=attribute;buf=buffer;col=column;vec=vector;nr=number;len=length;elem=element;val=value;ref=reference;i=index;var=variable;hght=height;cl=client;num=number;pos=position;lst=list;addr=address' -- key: readability-uppercase-literal-suffix.NewSuffixes - value: '' -- key: modernize-loop-convert.MinConfidence - value: reasonable -- key: performance-unnecessary-value-param.AllowedTypes - value: '' -- key: readability-uniqueptr-delete-release.PreferResetCall - value: 'false' -- key: readability-identifier-naming.ClassConstantSuffix - value: _ -- key: readability-identifier-naming.FunctionPrefix - value: '' -- key: google-readability-namespace-comments.SpacesBeforeComments - value: '2' -- key: readability-else-after-return.WarnOnUnfixable - value: 'true' -- key: readability-identifier-naming.PublicMethodSuffix - value: '' -- key: readability-identifier-naming.MethodCase - value: lower_case -- key: readability-function-size.BranchThreshold - value: '4294967295' -- key: readability-identifier-naming.FunctionCase - value: lower_case -- key: readability-identifier-naming.ConstexprFunctionIgnoredRegexp - value: '' -- key: readability-implicit-bool-conversion.AllowIntegerConditions - value: 'false' -- key: readability-identifier-naming.PublicMemberPrefix - value: '' -- key: readability-function-size.StatementThreshold - value: '800' -- key: readability-identifier-naming.ConstantParameterCase - value: lower_case -- key: readability-identifier-naming.LocalPointerCase - value: lower_case -- key: readability-identifier-naming.ConstexprFunctionCase - value: lower_case -- key: readability-identifier-naming.PublicMemberIgnoredRegexp - value: '' -- key: readability-identifier-naming.IgnoreMainLikeFunctions - value: 'false' -- key: google-runtime-int.SignedTypePrefix - value: int -- key: google-readability-function-size.StatementThreshold - value: '800' -- key: readability-identifier-naming.ClassConstantIgnoredRegexp - value: '' -- key: readability-identifier-naming.MemberCase - value: lower_case -- key: readability-identifier-naming.StructPrefix - value: '' -- key: readability-identifier-naming.AbstractClassPrefix - value: '' -- key: readability-suspicious-call-argument.DiceSimilarAbove - value: '70' -- key: readability-identifier-naming.TypeAliasPrefix - value: '' -- key: readability-identifier-naming.VirtualMethodIgnoredRegexp - value: '' -- key: readability-suspicious-call-argument.Abbreviation - value: 'true' -- key: readability-identifier-naming.UnionIgnoredRegexp - value: '' -- key: readability-identifier-naming.UnionSuffix - value: '' -- key: readability-identifier-naming.LocalVariablePrefix - value: '' -- key: readability-identifier-naming.NamespaceSuffix - value: '' -- key: modernize-use-equals-default.IgnoreMacros - value: 'true' -- key: modernize-use-emplace.SmartPointers - value: '::std::shared_ptr;::std::unique_ptr;::std::auto_ptr;::std::weak_ptr' -- key: readability-identifier-naming.PublicMethodIgnoredRegexp - value: '' -- key: readability-magic-numbers.IgnorePowersOf2IntegerValues - value: 'false' -- key: readability-suspicious-call-argument.JaroWinklerSimilarAbove - value: '85' -- key: readability-identifier-naming.PublicMethodPrefix - value: '' -- key: readability-identifier-naming.ClassConstantPrefix - value: '' -- key: readability-simplify-subscript-expr.Types - value: '::std::basic_string;::std::basic_string_view;::std::vector;::std::array' -- key: performance-unnecessary-copy-initialization.ExcludedContainerTypes - value: '' -- key: modernize-replace-auto-ptr.IncludeStyle - value: llvm -- key: performance-move-const-arg.CheckTriviallyCopyableMove - value: 'false' -- key: readability-static-accessed-through-instance.NameSpecifierNestingThreshold - value: '3' -- key: readability-function-size.VariableThreshold - value: '4294967295' -- key: readability-identifier-naming.VariableIgnoredRegexp - value: '' -- key: readability-identifier-naming.TemplateParameterCase - value: CamelCase -- key: cert-dcl16-c.NewSuffixes - value: 'L;LL;LU;LLU' -- key: readability-identifier-naming.GetConfigPerFile - value: 'true' -- key: readability-identifier-naming.PointerParameterCase - value: lower_case -- key: modernize-use-default-member-init.UseAssignment - value: 'false' -- key: readability-identifier-naming.PrivateMemberIgnoredRegexp - value: '' -- key: readability-function-size.NestingThreshold - value: '4294967295' -- key: google-readability-function-size.BranchThreshold - value: '4294967295' -- key: readability-identifier-naming.MemberSuffix - value: '' -- key: readability-identifier-naming.ValueTemplateParameterIgnoredRegexp - value: '' -- key: readability-identifier-naming.PrivateMethodIgnoredRegexp - value: '' -- key: modernize-use-override.AllowOverrideAndFinal - value: 'false' -- key: readability-function-size.ParameterThreshold - value: '4294967295' -- key: readability-identifier-naming.TypeTemplateParameterSuffix - value: '' -- key: readability-function-cognitive-complexity.IgnoreMacros - value: 'false' -- key: modernize-loop-convert.IncludeStyle - value: llvm -- key: cert-str34-c.DiagnoseSignedUnsignedCharComparisons - value: 'false' -- key: readability-identifier-naming.StructIgnoredRegexp - value: '' -- key: readability-identifier-naming.ParameterSuffix - value: '' -- key: readability-identifier-naming.AggressiveDependentMemberLookup - value: 'false' -- key: readability-redundant-smartptr-get.IgnoreMacros - value: 'true' -- key: google-readability-function-size.ParameterThreshold - value: '4294967295' -- key: readability-identifier-naming.UnionPrefix - value: '' -- key: readability-identifier-naming.ConstantIgnoredRegexp - value: '' -- key: readability-identifier-naming.NamespacePrefix - value: '' -- key: readability-identifier-naming.ConstexprVariableSuffix - value: '' -- key: readability-identifier-naming.ConstantPointerParameterSuffix - value: '' -- key: readability-identifier-naming.TypeTemplateParameterCase - value: CamelCase -- key: readability-identifier-naming.StructCase - value: lower_case -- key: modernize-use-emplace.TupleTypes - value: '::std::pair;::std::tuple' -- key: modernize-use-emplace.TupleMakeFunctions - value: '::std::make_pair;::std::make_tuple' -- key: readability-identifier-naming.LocalConstantPointerSuffix - value: '' -- key: readability-identifier-naming.TypedefCase - value: lower_case -- key: modernize-replace-random-shuffle.IncludeStyle - value: llvm -- key: modernize-use-bool-literals.IgnoreMacros - value: 'true' -- key: readability-identifier-naming.ProtectedMemberIgnoredRegexp - value: '' -- key: readability-identifier-naming.GlobalConstantCase - value: lower_case -- key: google-readability-namespace-comments.ShortNamespaceLines - value: '10' -- key: readability-suspicious-call-argument.JaroWinklerDissimilarBelow - value: '75' -- key: modernize-avoid-bind.PermissiveParameterList - value: 'false' -- key: readability-identifier-naming.PrivateMethodCase - value: lower_case -- key: readability-suspicious-call-argument.Suffix - value: 'true' -- key: readability-identifier-naming.ConstexprMethodSuffix - value: '' -- key: readability-identifier-naming.ConstantMemberCase - value: lower_case -- key: readability-identifier-naming.ProtectedMethodIgnoredRegexp - value: '' -- key: readability-identifier-naming.MethodSuffix - value: '' -- key: modernize-use-noexcept.ReplacementString - value: '' -- key: modernize-use-using.IgnoreMacros - value: 'true' -- key: readability-identifier-naming.ConstexprMethodCase - value: lower_case -- key: readability-identifier-naming.TypeAliasIgnoredRegexp - value: '' -- key: readability-identifier-naming.MemberPrefix - value: '' -- key: readability-suspicious-call-argument.MinimumIdentifierNameLength - value: '3' -- key: readability-identifier-naming.LocalConstantSuffix - value: '' -- key: readability-identifier-naming.ClassSuffix - value: '' -- key: modernize-loop-convert.NamingStyle - value: CamelCase -- key: readability-identifier-naming.TypeTemplateParameterPrefix - value: '' -- key: readability-identifier-naming.PrivateMemberCase - value: lower_case -- key: performance-no-automatic-move.AllowedTypes - value: '' -- key: readability-suspicious-call-argument.SubstringDissimilarBelow - value: '40' -- key: google-runtime-int.UnsignedTypePrefix - value: uint -- key: readability-identifier-naming.EnumConstantIgnoredRegexp - value: '' -- key: performance-for-range-copy.WarnOnAllAutoCopies - value: 'false' -- key: readability-identifier-naming.ParameterPrefix - value: '' -- key: readability-identifier-naming.TemplateTemplateParameterCase - value: CamelCase -- key: modernize-pass-by-value.IncludeStyle - value: llvm -- key: readability-identifier-naming.ProtectedMemberSuffix - value: _ -- key: readability-identifier-naming.ConstexprVariablePrefix - value: '' -- key: readability-identifier-naming.GlobalConstantPointerSuffix - value: '' -- key: readability-simplify-boolean-expr.ChainedConditionalReturn - value: 'false' -- key: readability-identifier-naming.ConstantPointerParameterPrefix - value: '' -- key: modernize-use-override.FinalSpelling - value: final -- key: readability-else-after-return.WarnOnConditionVariables - value: 'true' -- key: modernize-use-nullptr.NullMacros - value: 'NULL' -- key: readability-suspicious-call-argument.SuffixDissimilarBelow - value: '25' -- key: readability-identifier-naming.LocalConstantPointerPrefix - value: '' -- key: readability-suspicious-call-argument.LevenshteinSimilarAbove - value: '66' -- key: readability-identifier-naming.NamespaceCase - value: lower_case -- key: modernize-make-shared.IgnoreDefaultInitialization - value: 'true' -- key: readability-suspicious-call-argument.JaroWinkler - value: 'true' -- key: readability-identifier-naming.GlobalPointerCase - value: lower_case -- key: modernize-make-shared.IncludeStyle - value: llvm -- key: readability-identifier-naming.LocalConstantPointerCase - value: lower_case -- key: readability-suspicious-call-argument.Prefix - value: 'true' -- key: readability-identifier-naming.ConstexprMethodPrefix - value: '' -- key: readability-identifier-naming.ValueTemplateParameterCase - value: CamelCase -- key: readability-identifier-naming.MethodPrefix - value: '' -- key: readability-identifier-naming.ConstexprMethodIgnoredRegexp - value: '' -- key: readability-identifier-naming.AbstractClassIgnoredRegexp - value: '' -- key: readability-identifier-naming.ConstantParameterIgnoredRegexp - value: '' -- key: readability-identifier-naming.ProtectedMethodSuffix - value: '' -- key: cppcoreguidelines-explicit-virtual-functions.IgnoreDestructors - value: 'true' -- key: readability-identifier-naming.LocalConstantPrefix - value: '' -- key: modernize-make-unique.IgnoreMacros - value: 'true' -- key: readability-identifier-naming.ConstantCase - value: lower_case -- key: performance-for-range-copy.AllowedTypes - value: '' -- key: readability-identifier-naming.ClassPrefix - value: '' -- key: readability-identifier-naming.GlobalConstantPointerPrefix - value: '' -- key: readability-identifier-naming.GlobalVariableSuffix - value: '' -- key: readability-identifier-naming.StaticConstantCase - value: lower_case -- key: readability-identifier-naming.ProtectedMemberPrefix - value: '' -- key: readability-identifier-naming.ClassCase - value: lower_case -- key: readability-identifier-naming.GlobalVariableCase - value: lower_case -- key: readability-identifier-naming.PointerParameterIgnoredRegexp - value: '' -- key: readability-magic-numbers.IgnoredFloatingPointValues - value: '1.0;100.0;' -- key: performance-inefficient-string-concatenation.StrictMode - value: 'false' -- key: readability-implicit-bool-conversion.AllowPointerConditions - value: 'false' -- key: readability-identifier-naming.VirtualMethodCase - value: lower_case -- key: readability-identifier-naming.VariableSuffix - value: '' -- key: modernize-make-unique.MakeSmartPtrFunction - value: 'std::make_unique' -- key: google-runtime-int.TypeSuffix - value: '' -- key: portability-restrict-system-includes.Includes - value: '*' -- key: readability-identifier-naming.StaticVariableSuffix - value: '' -- key: readability-identifier-naming.LocalVariableIgnoredRegexp - value: '' -- key: modernize-make-unique.MakeSmartPtrFunctionHeader - value: '' -- key: readability-suspicious-call-argument.SubstringSimilarAbove - value: '50' -- key: readability-identifier-naming.TypedefSuffix - value: '' -- key: readability-identifier-naming.EnumSuffix - value: '' -- key: readability-identifier-naming.PointerParameterSuffix - value: '' -- key: modernize-use-noexcept.UseNoexceptFalse - value: 'true' -- key: readability-function-cognitive-complexity.Threshold - value: '25' -- key: cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic - value: 'true' -- key: readability-identifier-naming.ProtectedMethodPrefix - value: '' -- key: readability-identifier-naming.VirtualMethodSuffix - value: '' -- key: performance-faster-string-find.StringLikeClasses - value: '::std::basic_string;::std::basic_string_view' -- key: readability-identifier-naming.ConstexprVariableIgnoredRegexp - value: '' -- key: google-readability-function-size.VariableThreshold - value: '4294967295' -- key: readability-identifier-naming.InlineNamespaceSuffix - value: '' -- key: readability-identifier-naming.ConstantParameterSuffix - value: '' -- key: readability-identifier-naming.GlobalVariablePrefix - value: '' -- key: modernize-use-default-member-init.IgnoreMacros - value: 'true' -- key: llvm-qualified-auto.AddConstToQualified - value: 'false' -- key: readability-identifier-naming.LocalConstantIgnoredRegexp - value: '' -- key: readability-identifier-naming.GlobalVariableIgnoredRegexp - value: '' -- key: readability-identifier-naming.TemplateTemplateParameterIgnoredRegexp - value: '' -- key: readability-identifier-naming.ConstantPointerParameterIgnoredRegexp - value: '' -- key: readability-identifier-naming.TemplateTemplateParameterSuffix - value: '' -- key: llvm-else-after-return.WarnOnConditionVariables - value: 'false' -- key: readability-identifier-naming.LocalConstantCase - value: lower_case -- key: readability-identifier-naming.VariablePrefix - value: '' -- key: readability-identifier-naming.ConstantMemberIgnoredRegexp - value: '' -- key: modernize-raw-string-literal.DelimiterStem - value: lit -- key: readability-identifier-naming.FunctionIgnoredRegexp - value: '' -- key: readability-suspicious-call-argument.Dice - value: 'true' -- key: readability-identifier-naming.StaticVariablePrefix - value: '' -- key: readability-identifier-naming.TypedefPrefix - value: '' -- key: readability-identifier-naming.VariableCase - value: lower_case -- key: readability-identifier-naming.EnumPrefix - value: '' -- key: modernize-raw-string-literal.ReplaceShorterLiterals - value: 'false' -- key: readability-identifier-naming.AbstractClassCase - value: lower_case -- key: performance-inefficient-vector-operation.VectorLikeClasses - value: '::std::vector' -- key: readability-identifier-naming.ConstexprVariableCase - value: lower_case -- key: readability-magic-numbers.IgnoredIntegerValues - value: '1;2;3;4;' -- key: modernize-use-auto.RemoveStars - value: 'false' -- key: readability-redundant-member-init.IgnoreBaseInCopyConstructors - value: 'false' -- key: performance-unnecessary-value-param.IncludeStyle - value: llvm -- key: portability-simd-intrinsics.Std - value: '' -- key: readability-identifier-naming.ConstantPointerParameterCase - value: lower_case -- key: llvm-else-after-return.WarnOnUnfixable - value: 'false' -- key: readability-identifier-naming.TemplateParameterIgnoredRegexp - value: '' + cert-dcl16-c.NewSuffixes: 'L;LL;LU;LLU' + cert-err33-c.AllowCastToVoid: 'true' + cert-err33-c.CheckedFunctions: '::aligned_alloc;::asctime_s;::at_quick_exit;::atexit;::bsearch;::bsearch_s;::btowc;::c16rtomb;::c32rtomb;::calloc;::clock;::cnd_broadcast;::cnd_init;::cnd_signal;::cnd_timedwait;::cnd_wait;::ctime_s;::fclose;::fflush;::fgetc;::fgetpos;::fgets;::fgetwc;::fopen;::fopen_s;::fprintf;::fprintf_s;::fputc;::fputs;::fputwc;::fputws;::fread;::freopen;::freopen_s;::fscanf;::fscanf_s;::fseek;::fsetpos;::ftell;::fwprintf;::fwprintf_s;::fwrite;::fwscanf;::fwscanf_s;::getc;::getchar;::getenv;::getenv_s;::gets_s;::getwc;::getwchar;::gmtime;::gmtime_s;::localtime;::localtime_s;::malloc;::mbrtoc16;::mbrtoc32;::mbsrtowcs;::mbsrtowcs_s;::mbstowcs;::mbstowcs_s;::memchr;::mktime;::mtx_init;::mtx_lock;::mtx_timedlock;::mtx_trylock;::mtx_unlock;::printf_s;::putc;::putwc;::raise;::realloc;::remove;::rename;::scanf;::scanf_s;::setlocale;::setvbuf;::signal;::snprintf;::snprintf_s;::sprintf;::sprintf_s;::sscanf;::sscanf_s;::strchr;::strerror_s;::strftime;::strpbrk;::strrchr;::strstr;::strtod;::strtof;::strtoimax;::strtok;::strtok_s;::strtol;::strtold;::strtoll;::strtoul;::strtoull;::strtoumax;::strxfrm;::swprintf;::swprintf_s;::swscanf;::swscanf_s;::thrd_create;::thrd_detach;::thrd_join;::thrd_sleep;::time;::timespec_get;::tmpfile;::tmpfile_s;::tmpnam;::tmpnam_s;::tss_create;::tss_get;::tss_set;::ungetc;::ungetwc;::vfprintf;::vfprintf_s;::vfscanf;::vfscanf_s;::vfwprintf;::vfwprintf_s;::vfwscanf;::vfwscanf_s;::vprintf_s;::vscanf;::vscanf_s;::vsnprintf;::vsnprintf_s;::vsprintf;::vsprintf_s;::vsscanf;::vsscanf_s;::vswprintf;::vswprintf_s;::vswscanf;::vswscanf_s;::vwprintf_s;::vwscanf;::vwscanf_s;::wcrtomb;::wcschr;::wcsftime;::wcspbrk;::wcsrchr;::wcsrtombs;::wcsrtombs_s;::wcsstr;::wcstod;::wcstof;::wcstoimax;::wcstok;::wcstok_s;::wcstol;::wcstold;::wcstoll;::wcstombs;::wcstombs_s;::wcstoul;::wcstoull;::wcstoumax;::wcsxfrm;::wctob;::wctrans;::wctype;::wmemchr;::wprintf_s;::wscanf;::wscanf_s;' + cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField: 'false' + cert-str34-c.DiagnoseSignedUnsignedCharComparisons: 'false' + cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic: 'true' + google-build-namespaces.HeaderFileExtensions: ';h;hh;hpp;hxx' + google-global-names-in-headers.HeaderFileExtensions: ';h;hh;hpp;hxx' + google-readability-braces-around-statements.ShortStatementLines: '1' + google-readability-function-size.BranchThreshold: '4294967295' + google-readability-function-size.LineThreshold: '4294967295' + google-readability-function-size.NestingThreshold: '4294967295' + google-readability-function-size.ParameterThreshold: '4294967295' + google-readability-function-size.StatementThreshold: '800' + google-readability-function-size.VariableThreshold: '4294967295' + google-readability-namespace-comments.ShortNamespaceLines: '10' + google-readability-namespace-comments.SpacesBeforeComments: '2' + google-runtime-int.SignedTypePrefix: int + google-runtime-int.TypeSuffix: '' + google-runtime-int.UnsignedTypePrefix: uint + llvm-else-after-return.WarnOnConditionVariables: 'false' + llvm-else-after-return.WarnOnUnfixable: 'false' + llvm-qualified-auto.AddConstToQualified: 'false' + modernize-avoid-bind.PermissiveParameterList: 'false' + modernize-deprecated-headers.CheckHeaderFile: 'false' + modernize-loop-convert.IncludeStyle: llvm + modernize-loop-convert.MakeReverseRangeFunction: '' + modernize-loop-convert.MakeReverseRangeHeader: '' + modernize-loop-convert.MaxCopySize: '16' + modernize-loop-convert.MinConfidence: reasonable + modernize-loop-convert.NamingStyle: CamelCase + modernize-loop-convert.UseCxx20ReverseRanges: 'true' + modernize-make-shared.IgnoreDefaultInitialization: 'true' + modernize-make-shared.IgnoreMacros: 'true' + modernize-make-shared.IncludeStyle: llvm + modernize-make-shared.MakeSmartPtrFunction: 'std::make_shared' + modernize-make-shared.MakeSmartPtrFunctionHeader: '' + modernize-make-unique.IgnoreDefaultInitialization: 'true' + modernize-make-unique.IgnoreMacros: 'true' + modernize-make-unique.IncludeStyle: llvm + modernize-make-unique.MakeSmartPtrFunction: 'std::make_unique' + modernize-make-unique.MakeSmartPtrFunctionHeader: '' + modernize-raw-string-literal.DelimiterStem: lit + modernize-raw-string-literal.ReplaceShorterLiterals: 'false' + modernize-replace-auto-ptr.IncludeStyle: llvm + modernize-replace-disallow-copy-and-assign-macro.MacroName: DISALLOW_COPY_AND_ASSIGN + modernize-replace-random-shuffle.IncludeStyle: llvm + modernize-type-traits.IgnoreMacros: 'false' + modernize-use-auto.MinTypeNameLength: '5' + modernize-use-auto.RemoveStars: 'false' + modernize-use-bool-literals.IgnoreMacros: 'true' + modernize-use-default-member-init.IgnoreMacros: 'true' + modernize-use-default-member-init.UseAssignment: 'false' + modernize-use-emplace.ContainersWithPush: '::std::stack;::std::queue;::std::priority_queue' + modernize-use-emplace.ContainersWithPushBack: '::std::vector;::std::list;::std::deque' + modernize-use-emplace.ContainersWithPushFront: '::std::forward_list;::std::list;::std::deque' + modernize-use-emplace.EmplacyFunctions: 'vector::emplace_back;vector::emplace;deque::emplace;deque::emplace_front;deque::emplace_back;forward_list::emplace_after;forward_list::emplace_front;list::emplace;list::emplace_back;list::emplace_front;set::emplace;set::emplace_hint;map::emplace;map::emplace_hint;multiset::emplace;multiset::emplace_hint;multimap::emplace;multimap::emplace_hint;unordered_set::emplace;unordered_set::emplace_hint;unordered_map::emplace;unordered_map::emplace_hint;unordered_multiset::emplace;unordered_multiset::emplace_hint;unordered_multimap::emplace;unordered_multimap::emplace_hint;stack::emplace;queue::emplace;priority_queue::emplace' + modernize-use-emplace.IgnoreImplicitConstructors: 'false' + modernize-use-emplace.SmartPointers: '::std::shared_ptr;::std::unique_ptr;::std::auto_ptr;::std::weak_ptr' + modernize-use-emplace.TupleMakeFunctions: '::std::make_pair;::std::make_tuple' + modernize-use-emplace.TupleTypes: '::std::pair;::std::tuple' + modernize-use-equals-default.IgnoreMacros: 'true' + modernize-use-equals-delete.IgnoreMacros: 'true' + modernize-use-nodiscard.ReplacementString: '[[nodiscard]]' + modernize-use-noexcept.ReplacementString: '' + modernize-use-noexcept.UseNoexceptFalse: 'true' + modernize-use-nullptr.IgnoredTypes: 'std::_CmpUnspecifiedParam::;^std::__cmp_cat::__unspec' + modernize-use-nullptr.NullMacros: 'NULL' + modernize-use-override.AllowOverrideAndFinal: 'false' + modernize-use-override.FinalSpelling: final + modernize-use-override.IgnoreDestructors: 'false' + modernize-use-override.IgnoreTemplateInstantiations: 'false' + modernize-use-override.OverrideSpelling: override + modernize-use-std-numbers.DiffThreshold: '0.001' + modernize-use-std-numbers.IncludeStyle: llvm + modernize-use-std-print.FprintfLikeFunctions: '::fprintf;absl::FPrintF' + modernize-use-std-print.IncludeStyle: llvm + modernize-use-std-print.PrintHeader: '' + modernize-use-std-print.PrintfLikeFunctions: '::printf;absl::PrintF' + modernize-use-std-print.ReplacementPrintFunction: 'std::print' + modernize-use-std-print.ReplacementPrintlnFunction: 'std::println' + modernize-use-std-print.StrictMode: 'false' + modernize-use-transparent-functors.SafeMode: 'false' + modernize-use-using.IgnoreExternC: 'false' + modernize-use-using.IgnoreMacros: 'true' + performance-enum-size.EnumIgnoreList: '' + performance-faster-string-find.StringLikeClasses: '::std::basic_string;::std::basic_string_view' + performance-for-range-copy.AllowedTypes: '' + performance-for-range-copy.WarnOnAllAutoCopies: 'false' + performance-inefficient-string-concatenation.StrictMode: 'false' + performance-inefficient-vector-operation.EnableProto: 'false' + performance-inefficient-vector-operation.VectorLikeClasses: '::std::vector' + performance-move-const-arg.CheckMoveToConstRef: 'true' + performance-move-const-arg.CheckTriviallyCopyableMove: 'false' + performance-no-automatic-move.AllowedTypes: '' + performance-type-promotion-in-math-fn.IncludeStyle: llvm + performance-unnecessary-copy-initialization.AllowedTypes: '' + performance-unnecessary-copy-initialization.ExcludedContainerTypes: '' + performance-unnecessary-value-param.AllowedTypes: '' + performance-unnecessary-value-param.IncludeStyle: llvm + portability-restrict-system-includes.Includes: '*' + portability-simd-intrinsics.Std: '' + portability-simd-intrinsics.Suggest: 'false' + readability-avoid-const-params-in-decls.IgnoreMacros: 'true' + readability-avoid-return-with-void-value.IgnoreMacros: 'true' + readability-avoid-return-with-void-value.StrictMode: 'true' + readability-const-return-type.IgnoreMacros: 'true' + readability-container-data-pointer.IgnoredContainers: '' + readability-container-size-empty.ExcludedComparisonTypes: '::std::array' + readability-else-after-return.WarnOnConditionVariables: 'true' + readability-else-after-return.WarnOnUnfixable: 'true' + readability-function-size.BranchThreshold: '4294967295' + readability-function-size.LineThreshold: '4294967295' + readability-function-size.NestingThreshold: '4294967295' + readability-function-size.ParameterThreshold: '4294967295' + readability-function-size.StatementThreshold: '800' + readability-function-size.VariableThreshold: '4294967295' + readability-identifier-naming.AbstractClassCase: lower_case + readability-identifier-naming.AbstractClassIgnoredRegexp: '' + readability-identifier-naming.AbstractClassPrefix: '' + readability-identifier-naming.AbstractClassSuffix: '' + readability-identifier-naming.AggressiveDependentMemberLookup: 'false' + readability-identifier-naming.CheckAnonFieldInParent: 'false' + readability-identifier-naming.ClassCase: lower_case + readability-identifier-naming.ClassConstantCase: lower_case + readability-identifier-naming.ClassConstantIgnoredRegexp: '' + readability-identifier-naming.ClassConstantPrefix: '' + readability-identifier-naming.ClassConstantSuffix: _ + readability-identifier-naming.ClassIgnoredRegexp: '' + readability-identifier-naming.ClassMemberCase: lower_case + readability-identifier-naming.ClassMemberIgnoredRegexp: '' + readability-identifier-naming.ClassMemberPrefix: '' + readability-identifier-naming.ClassMemberSuffix: _ + readability-identifier-naming.ClassMethodCase: lower_case + readability-identifier-naming.ClassMethodIgnoredRegexp: '' + readability-identifier-naming.ClassMethodPrefix: '' + readability-identifier-naming.ClassMethodSuffix: '' + readability-identifier-naming.ClassPrefix: '' + readability-identifier-naming.ClassSuffix: '' + readability-identifier-naming.ConstantCase: lower_case + readability-identifier-naming.ConstantIgnoredRegexp: '' + readability-identifier-naming.ConstantMemberCase: lower_case + readability-identifier-naming.ConstantMemberIgnoredRegexp: '' + readability-identifier-naming.ConstantMemberPrefix: '' + readability-identifier-naming.ConstantMemberSuffix: '' + readability-identifier-naming.ConstantParameterCase: lower_case + readability-identifier-naming.ConstantParameterIgnoredRegexp: '' + readability-identifier-naming.ConstantParameterPrefix: '' + readability-identifier-naming.ConstantParameterSuffix: '' + readability-identifier-naming.ConstantPointerParameterCase: lower_case + readability-identifier-naming.ConstantPointerParameterIgnoredRegexp: '' + readability-identifier-naming.ConstantPointerParameterPrefix: '' + readability-identifier-naming.ConstantPointerParameterSuffix: '' + readability-identifier-naming.ConstantPrefix: '' + readability-identifier-naming.ConstantSuffix: '' + readability-identifier-naming.ConstexprFunctionCase: lower_case + readability-identifier-naming.ConstexprFunctionIgnoredRegexp: '' + readability-identifier-naming.ConstexprFunctionPrefix: '' + readability-identifier-naming.ConstexprFunctionSuffix: '' + readability-identifier-naming.ConstexprMethodCase: lower_case + readability-identifier-naming.ConstexprMethodIgnoredRegexp: '' + readability-identifier-naming.ConstexprMethodPrefix: '' + readability-identifier-naming.ConstexprMethodSuffix: '' + readability-identifier-naming.ConstexprVariableCase: lower_case + readability-identifier-naming.ConstexprVariableIgnoredRegexp: '' + readability-identifier-naming.ConstexprVariablePrefix: '' + readability-identifier-naming.ConstexprVariableSuffix: '' + readability-identifier-naming.EnumCase: CamelCase + readability-identifier-naming.EnumConstantCase: CamelCase + readability-identifier-naming.EnumConstantIgnoredRegexp: '' + readability-identifier-naming.EnumConstantPrefix: '' + readability-identifier-naming.EnumConstantSuffix: '' + readability-identifier-naming.EnumIgnoredRegexp: '' + readability-identifier-naming.EnumPrefix: '' + readability-identifier-naming.EnumSuffix: '' + readability-identifier-naming.FunctionCase: lower_case + readability-identifier-naming.FunctionIgnoredRegexp: '' + readability-identifier-naming.FunctionPrefix: '' + readability-identifier-naming.FunctionSuffix: '' + readability-identifier-naming.GetConfigPerFile: 'true' + readability-identifier-naming.GlobalConstantCase: lower_case + readability-identifier-naming.GlobalConstantIgnoredRegexp: '' + readability-identifier-naming.GlobalConstantPointerCase: CamelCase + readability-identifier-naming.GlobalConstantPointerIgnoredRegexp: '' + readability-identifier-naming.GlobalConstantPointerPrefix: '' + readability-identifier-naming.GlobalConstantPointerSuffix: '' + readability-identifier-naming.GlobalConstantPrefix: '' + readability-identifier-naming.GlobalConstantSuffix: '' + readability-identifier-naming.GlobalFunctionCase: lower_case + readability-identifier-naming.GlobalFunctionIgnoredRegexp: '' + readability-identifier-naming.GlobalFunctionPrefix: '' + readability-identifier-naming.GlobalFunctionSuffix: '' + readability-identifier-naming.GlobalPointerCase: lower_case + readability-identifier-naming.GlobalPointerIgnoredRegexp: '' + readability-identifier-naming.GlobalPointerPrefix: '' + readability-identifier-naming.GlobalPointerSuffix: '' + readability-identifier-naming.GlobalVariableCase: lower_case + readability-identifier-naming.GlobalVariableIgnoredRegexp: '' + readability-identifier-naming.GlobalVariablePrefix: '' + readability-identifier-naming.GlobalVariableSuffix: '' + readability-identifier-naming.IgnoreFailedSplit: 'false' + readability-identifier-naming.IgnoreMainLikeFunctions: 'false' + readability-identifier-naming.InlineNamespaceCase: lower_case + readability-identifier-naming.InlineNamespaceIgnoredRegexp: '' + readability-identifier-naming.InlineNamespacePrefix: '' + readability-identifier-naming.InlineNamespaceSuffix: '' + readability-identifier-naming.LocalConstantCase: lower_case + readability-identifier-naming.LocalConstantIgnoredRegexp: '' + readability-identifier-naming.LocalConstantPointerCase: lower_case + readability-identifier-naming.LocalConstantPointerIgnoredRegexp: '' + readability-identifier-naming.LocalConstantPointerPrefix: '' + readability-identifier-naming.LocalConstantPointerSuffix: '' + readability-identifier-naming.LocalConstantPrefix: '' + readability-identifier-naming.LocalConstantSuffix: '' + readability-identifier-naming.LocalPointerCase: lower_case + readability-identifier-naming.LocalPointerIgnoredRegexp: '' + readability-identifier-naming.LocalPointerPrefix: '' + readability-identifier-naming.LocalPointerSuffix: '' + readability-identifier-naming.LocalVariableCase: lower_case + readability-identifier-naming.LocalVariableIgnoredRegexp: '' + readability-identifier-naming.LocalVariablePrefix: '' + readability-identifier-naming.LocalVariableSuffix: '' + readability-identifier-naming.MemberCase: lower_case + readability-identifier-naming.MemberIgnoredRegexp: '' + readability-identifier-naming.MemberPrefix: '' + readability-identifier-naming.MemberSuffix: '' + readability-identifier-naming.MethodCase: lower_case + readability-identifier-naming.MethodIgnoredRegexp: '' + readability-identifier-naming.MethodPrefix: '' + readability-identifier-naming.MethodSuffix: '' + readability-identifier-naming.NamespaceCase: lower_case + readability-identifier-naming.NamespaceIgnoredRegexp: '' + readability-identifier-naming.NamespacePrefix: '' + readability-identifier-naming.NamespaceSuffix: '' + readability-identifier-naming.ParameterCase: lower_case + readability-identifier-naming.ParameterIgnoredRegexp: '' + readability-identifier-naming.ParameterPackCase: lower_case + readability-identifier-naming.ParameterPackIgnoredRegexp: '' + readability-identifier-naming.ParameterPackPrefix: '' + readability-identifier-naming.ParameterPackSuffix: '' + readability-identifier-naming.ParameterPrefix: '' + readability-identifier-naming.ParameterSuffix: '' + readability-identifier-naming.PointerParameterCase: lower_case + readability-identifier-naming.PointerParameterIgnoredRegexp: '' + readability-identifier-naming.PointerParameterPrefix: '' + readability-identifier-naming.PointerParameterSuffix: '' + readability-identifier-naming.PrivateMemberCase: lower_case + readability-identifier-naming.PrivateMemberIgnoredRegexp: '' + readability-identifier-naming.PrivateMemberPrefix: '' + readability-identifier-naming.PrivateMemberSuffix: _ + readability-identifier-naming.PrivateMethodCase: lower_case + readability-identifier-naming.PrivateMethodIgnoredRegexp: '' + readability-identifier-naming.PrivateMethodPrefix: '' + readability-identifier-naming.PrivateMethodSuffix: '' + readability-identifier-naming.ProtectedMemberCase: lower_case + readability-identifier-naming.ProtectedMemberIgnoredRegexp: '' + readability-identifier-naming.ProtectedMemberPrefix: '' + readability-identifier-naming.ProtectedMemberSuffix: _ + readability-identifier-naming.ProtectedMethodCase: lower_case + readability-identifier-naming.ProtectedMethodIgnoredRegexp: '' + readability-identifier-naming.ProtectedMethodPrefix: '' + readability-identifier-naming.ProtectedMethodSuffix: '' + readability-identifier-naming.PublicMemberCase: lower_case + readability-identifier-naming.PublicMemberIgnoredRegexp: '' + readability-identifier-naming.PublicMemberPrefix: '' + readability-identifier-naming.PublicMemberSuffix: '' + readability-identifier-naming.PublicMethodCase: lower_case + readability-identifier-naming.PublicMethodIgnoredRegexp: '' + readability-identifier-naming.PublicMethodPrefix: '' + readability-identifier-naming.PublicMethodSuffix: '' + readability-identifier-naming.StaticConstantCase: lower_case + readability-identifier-naming.StaticConstantIgnoredRegexp: '' + readability-identifier-naming.StaticConstantPrefix: '' + readability-identifier-naming.StaticConstantSuffix: '' + readability-identifier-naming.StaticVariableCase: lower_case + readability-identifier-naming.StaticVariableIgnoredRegexp: '' + readability-identifier-naming.StaticVariablePrefix: '' + readability-identifier-naming.StaticVariableSuffix: '' + readability-identifier-naming.StructCase: lower_case + readability-identifier-naming.StructIgnoredRegexp: '' + readability-identifier-naming.StructPrefix: '' + readability-identifier-naming.StructSuffix: '' + readability-identifier-naming.TemplateParameterCase: CamelCase + readability-identifier-naming.TemplateParameterIgnoredRegexp: '' + readability-identifier-naming.TemplateParameterPrefix: '' + readability-identifier-naming.TemplateParameterSuffix: '' + readability-identifier-naming.TemplateTemplateParameterCase: CamelCase + readability-identifier-naming.TemplateTemplateParameterIgnoredRegexp: '' + readability-identifier-naming.TemplateTemplateParameterPrefix: '' + readability-identifier-naming.TemplateTemplateParameterSuffix: '' + readability-identifier-naming.TypeAliasCase: lower_case + readability-identifier-naming.TypeAliasIgnoredRegexp: '' + readability-identifier-naming.TypeAliasPrefix: '' + readability-identifier-naming.TypeAliasSuffix: '' + readability-identifier-naming.TypeTemplateParameterCase: CamelCase + readability-identifier-naming.TypeTemplateParameterIgnoredRegexp: '' + readability-identifier-naming.TypeTemplateParameterPrefix: '' + readability-identifier-naming.TypeTemplateParameterSuffix: '' + readability-identifier-naming.TypedefCase: lower_case + readability-identifier-naming.TypedefIgnoredRegexp: '' + readability-identifier-naming.TypedefPrefix: '' + readability-identifier-naming.TypedefSuffix: '' + readability-identifier-naming.UnionCase: CamelCase + readability-identifier-naming.UnionIgnoredRegexp: '' + readability-identifier-naming.UnionPrefix: '' + readability-identifier-naming.UnionSuffix: '' + readability-identifier-naming.ValueTemplateParameterCase: CamelCase + readability-identifier-naming.ValueTemplateParameterIgnoredRegexp: '' + readability-identifier-naming.ValueTemplateParameterPrefix: '' + readability-identifier-naming.ValueTemplateParameterSuffix: '' + readability-identifier-naming.VariableCase: lower_case + readability-identifier-naming.VariableIgnoredRegexp: '' + readability-identifier-naming.VariablePrefix: '' + readability-identifier-naming.VariableSuffix: '' + readability-identifier-naming.VirtualMethodCase: lower_case + readability-identifier-naming.VirtualMethodIgnoredRegexp: '' + readability-identifier-naming.VirtualMethodPrefix: '' + readability-identifier-naming.VirtualMethodSuffix: '' + readability-implicit-bool-conversion.AllowIntegerConditions: 'false' + readability-implicit-bool-conversion.AllowPointerConditions: 'false' + readability-inconsistent-declaration-parameter-name.IgnoreMacros: 'true' + readability-inconsistent-declaration-parameter-name.Strict: 'false' + readability-magic-numbers.IgnoreAllFloatingPointValues: 'false' + readability-magic-numbers.IgnoreBitFieldsWidths: 'true' + readability-magic-numbers.IgnorePowersOf2IntegerValues: 'false' + readability-magic-numbers.IgnoreTypeAliases: 'false' + readability-magic-numbers.IgnoreUserDefinedLiterals: 'false' + readability-magic-numbers.IgnoredFloatingPointValues: '1.0;100.0;' + readability-magic-numbers.IgnoredIntegerValues: '1;2;3;4;' + readability-operators-representation.BinaryOperators: '&&;&=;&;|;~;!;!=;||;|=;^;^=' + readability-operators-representation.OverloadedOperators: '&&;&=;&;|;~;!;!=;||;|=;^;^=' + readability-redundant-casting.IgnoreMacros: 'true' + readability-redundant-casting.IgnoreTypeAliases: 'false' + readability-redundant-member-init.IgnoreBaseInCopyConstructors: 'false' + readability-redundant-smartptr-get.IgnoreMacros: 'true' + readability-redundant-string-init.StringNames: '::std::basic_string_view;::std::basic_string' + readability-simplify-boolean-expr.ChainedConditionalAssignment: 'false' + readability-simplify-boolean-expr.ChainedConditionalReturn: 'false' + readability-simplify-boolean-expr.IgnoreMacros: 'false' + readability-simplify-boolean-expr.SimplifyDeMorgan: 'true' + readability-simplify-boolean-expr.SimplifyDeMorganRelaxed: 'false' + readability-simplify-subscript-expr.Types: '::std::basic_string;::std::basic_string_view;::std::vector;::std::array' + readability-static-accessed-through-instance.NameSpecifierNestingThreshold: '3' + readability-suspicious-call-argument.Abbreviation: 'true' + readability-suspicious-call-argument.Abbreviations: 'lst=list;arr=array;num=number;ptr=pointer;i=index;val=value;ln=line;cpy=copy;idx=index;vec=vector;src=source;dest=destination;wdth=width;nr=number;elem=element;srv=server;pos=position;cl=client;stmt=statement;len=length;buf=buffer;dist=distancedst=distance;hght=height;var=variable;col=column;ref=reference;attr=attribute;str=string;cnt=count;addr=address' + readability-suspicious-call-argument.Dice: 'true' + readability-suspicious-call-argument.DiceDissimilarBelow: '60' + readability-suspicious-call-argument.DiceSimilarAbove: '70' + readability-suspicious-call-argument.Equality: 'true' + readability-suspicious-call-argument.JaroWinkler: 'true' + readability-suspicious-call-argument.JaroWinklerDissimilarBelow: '75' + readability-suspicious-call-argument.JaroWinklerSimilarAbove: '85' + readability-suspicious-call-argument.Levenshtein: 'true' + readability-suspicious-call-argument.LevenshteinDissimilarBelow: '50' + readability-suspicious-call-argument.LevenshteinSimilarAbove: '66' + readability-suspicious-call-argument.MinimumIdentifierNameLength: '3' + readability-suspicious-call-argument.Prefix: 'true' + readability-suspicious-call-argument.PrefixDissimilarBelow: '25' + readability-suspicious-call-argument.PrefixSimilarAbove: '30' + readability-suspicious-call-argument.Substring: 'true' + readability-suspicious-call-argument.SubstringDissimilarBelow: '40' + readability-suspicious-call-argument.SubstringSimilarAbove: '50' + readability-suspicious-call-argument.Suffix: 'true' + readability-suspicious-call-argument.SuffixDissimilarBelow: '25' + readability-suspicious-call-argument.SuffixSimilarAbove: '30' + readability-uniqueptr-delete-release.PreferResetCall: 'false' + readability-uppercase-literal-suffix.IgnoreMacros: 'true' + readability-uppercase-literal-suffix.NewSuffixes: '' +SystemHeaders: false ... diff --git a/include/cpp_yyjson.hpp b/include/cpp_yyjson.hpp index 6010698..c997c0d 100644 --- a/include/cpp_yyjson.hpp +++ b/include/cpp_yyjson.hpp @@ -10,12 +10,12 @@ #pragma once #include +#include #include #include #include #include #include -#include #include #include @@ -123,7 +123,7 @@ namespace yyjson class json_string : public std::string_view { - std::shared_ptr str_ptr_ = {}; + std::shared_ptr str_ptr_; public: json_string(char* ptr, std::size_t len) @@ -204,7 +204,7 @@ namespace yyjson } char_like* buf_ = nullptr; std::size_t size_ = 0; - std::shared_ptr alc_ = {}; + std::shared_ptr alc_; public: pool_allocator() = default; @@ -405,7 +405,7 @@ namespace yyjson template concept base_of_value_ref = requires(Derived d) { [](const abstract_value_ref&) {}(d); }; } // namespace detail - } // namespace reader + } // namespace reader namespace writer { @@ -493,12 +493,12 @@ namespace yyjson template concept to_json_inp_usr_noext = - (std::same_as || std::same_as || std::same_as)&&requires( - V& v, T&& t) { caster>::to_json(v, std::forward(t)); }; + (std::same_as || std::same_as || std::same_as) && + requires(V& v, T&& t) { caster>::to_json(v, std::forward(t)); }; template concept to_json_inp_usr_only_ext = - (std::same_as || std::same_as || std::same_as)&&requires( - V& v, T&& t) { caster>::to_json(v, std::forward(t), copy_string); }; + (std::same_as || std::same_as || std::same_as) && + requires(V& v, T&& t) { caster>::to_json(v, std::forward(t), copy_string); }; template concept to_json_inp_usr_ext = to_json_inp_usr_noext && to_json_inp_usr_only_ext; template @@ -514,15 +514,16 @@ namespace yyjson concept to_json_inp_usr_defined = to_json_val_usr || to_json_arr_usr || to_json_obj_usr; template - concept to_json_def = (!to_json_usr)&&requires(T&& t) { + concept to_json_def = (!to_json_usr) && requires(T&& t) { default_caster>::to_json(std::forward(t), copy_string); default_caster>::to_json(std::forward(t)); }; template concept to_json_inp_def = - (!to_json_inp_usr)&&(std::same_as || std::same_as || - std::same_as)&&requires(V& v, T&& t) { + (!to_json_inp_usr) && + (std::same_as || std::same_as || std::same_as) && + requires(V& v, T&& t) { default_caster>::to_json(v, std::forward(t), copy_string); default_caster>::to_json(v, std::forward(t)); }; @@ -625,19 +626,19 @@ namespace yyjson template concept create_primitive_callable = - (!base_of_value)&&(!reader::detail::base_of_value_ref)&&requires(T&& t, DocType doc) { + (!base_of_value) && (!reader::detail::base_of_value_ref) && requires(T&& t, DocType doc) { doc.create_primitive(std::forward(t)); doc.create_primitive(std::forward(t), copy_string); }; template concept create_array_callable = - (!base_of_value)&&(!reader::detail::base_of_value_ref)&&requires(T&& t, DocType doc) { + (!base_of_value) && (!reader::detail::base_of_value_ref) && requires(T&& t, DocType doc) { doc.create_array(std::forward(t)); doc.create_array(std::forward(t), copy_string); }; template concept create_object_callable = - (!base_of_value)&&(!reader::detail::base_of_value_ref)&&requires(T&& t, DocType doc) { + (!base_of_value) && (!reader::detail::base_of_value_ref) && requires(T&& t, DocType doc) { doc.create_object(std::forward(t)); doc.create_object(std::forward(t), copy_string); }; @@ -669,7 +670,7 @@ namespace yyjson struct mutable_document_ptrs { yyjson_mut_doc* self = yyjson_mut_doc_new(nullptr); - std::vector> children = {}; + std::vector> children; }; struct mutable_document @@ -1056,33 +1057,33 @@ namespace yyjson template auto set_value(yyjson_mut_val* dst, T&& t, Ts... ts) noexcept { - using V = std::remove_cvref_t; + using value_type = std::remove_cvref_t; constexpr auto copy = (sizeof...(Ts) != 0); - if constexpr (std::same_as) + if constexpr (std::same_as) { dst->tag = YYJSON_TYPE_NULL | YYJSON_SUBTYPE_NONE; } - else if constexpr (std::same_as) + else if constexpr (std::same_as) { dst->tag = YYJSON_TYPE_BOOL | static_cast(static_cast(t) << 3); } - else if constexpr (std::signed_integral) + else if constexpr (std::signed_integral) { dst->tag = YYJSON_TYPE_NUM | YYJSON_SUBTYPE_SINT; dst->uni.i64 = static_cast(t); } - else if constexpr (std::unsigned_integral) + else if constexpr (std::unsigned_integral) { dst->tag = YYJSON_TYPE_NUM | YYJSON_SUBTYPE_UINT; dst->uni.u64 = static_cast(t); } - else if constexpr (std::floating_point) + else if constexpr (std::floating_point) { dst->tag = YYJSON_TYPE_NUM | YYJSON_SUBTYPE_REAL; dst->uni.f64 = static_cast(t); } - else if constexpr (std::same_as) + else if constexpr (std::same_as) { if (t == nullptr) return false; const auto sv = std::string_view(t); @@ -1097,10 +1098,12 @@ namespace yyjson } if (yyjson_unlikely(!dst->uni.str)) return false; } - else if constexpr (std::same_as || std::same_as) + else if constexpr (std::same_as || + std::same_as) { dst->tag = (static_cast(t.size()) << YYJSON_TAG_BIT) | YYJSON_TYPE_STR; - if constexpr (copy || (std::same_as && std::is_rvalue_reference_v)) + if constexpr (copy || + (std::same_as && std::is_rvalue_reference_v)) { dst->uni.str = unsafe_yyjson_mut_strncpy(ptrs->self, t.data(), t.size()); } @@ -2912,8 +2915,8 @@ namespace yyjson return {std::move(it), false}; } template // penalize overload priority - auto try_emplace(KeyType&& key, std::initializer_list list) noexcept - -> std::pair, bool> + auto try_emplace(KeyType&& key, + std::initializer_list list) noexcept -> std::pair, bool> { auto it = find(key); if (it == end()) @@ -2923,8 +2926,8 @@ namespace yyjson return {std::move(it), false}; } template // penalize overload priority - auto try_emplace(KeyType&& key, std::initializer_list list, copy_string_t) noexcept - -> std::pair, bool> + auto try_emplace(KeyType&& key, std::initializer_list list, + copy_string_t) noexcept -> std::pair, bool> { auto it = find(key); if (it == end()) @@ -2945,8 +2948,8 @@ namespace yyjson return {std::move(it), false}; } template - auto try_emplace(KeyType&& key, std::initializer_list list, copy_string_t) noexcept - -> std::pair, bool> + auto try_emplace(KeyType&& key, std::initializer_list list, + copy_string_t) noexcept -> std::pair, bool> { auto it = find(key); if (it == end()) @@ -3800,12 +3803,12 @@ namespace yyjson } static auto from_json(const Json& obj) { - using ValueType = std::remove_cvref_t>>; + using value_type = std::remove_cvref_t>>; auto result = T(); // TODO: reserve for (auto&& kv : obj) { - result.emplace(kv.first, cast(kv.second)); + result.emplace(kv.first, cast(kv.second)); } return result; } @@ -3821,12 +3824,12 @@ namespace yyjson } static auto from_json(const Json& obj) { - using ValueType = std::remove_cvref_t>>; + using value_type = std::remove_cvref_t>>; auto result = T(); // TODO: use back_insertable for (auto&& kv : obj) { - result.emplace_back(kv.first, cast(kv.second)); + result.emplace_back(kv.first, cast(kv.second)); } return result; } @@ -4150,7 +4153,7 @@ namespace yyjson throw bad_cast(fmt::format("the size of JSON object is greater than the size of {}", NAMEOF_TYPE(Tuple))); - using Indices = std::make_index_sequence>>; + using indices = std::make_index_sequence>>; auto it = obj->begin(); [&result, &it](std::index_sequence) { (((std::get(result) = std::tuple_element_t>( @@ -4158,7 +4161,7 @@ namespace yyjson cast>(std::get<1>(*it)))), ++it), ...); - }(Indices{}); + }(indices{}); return result; } @@ -4173,11 +4176,11 @@ namespace yyjson throw bad_cast(fmt::format("the size of JSON array is greater than the size of {}", NAMEOF_TYPE(Tuple))); - using Indices = std::make_index_sequence>>; + using indices = std::make_index_sequence>>; auto it = arr->begin(); [&result, &it](std::index_sequence) { ((std::get(result) = cast>>(*(it++))), ...); - }(Indices{}); + }(indices{}); return result; } @@ -4190,19 +4193,19 @@ namespace yyjson requires requires(writer::array_ref& arr) { (arr.emplace_back(std::declval()), ...); } static auto to_json(writer::array_ref& arr, const Tuple& t, Args... args) { - using Indices = std::make_index_sequence>>; + using indices = std::make_index_sequence>>; [&arr, &t, args...](std::index_sequence) { (arr.emplace_back(std::get(t), args...), ...); - }(Indices{}); + }(indices{}); } template requires requires(writer::array_ref& arr) { (arr.emplace_back(std::declval()), ...); } static auto to_json(writer::array_ref& arr, Tuple&& t, Args... args) { - using Indices = std::make_index_sequence>>; + using indices = std::make_index_sequence>>; [&arr, t = std::move(t), args...](std::index_sequence) mutable { (arr.emplace_back(std::get(std::move(t)), args...), ...); - }(Indices{}); + }(indices{}); } template @@ -4211,10 +4214,10 @@ namespace yyjson } static auto to_json(writer::object_ref& obj, const Tuple& t, Args... args) { - using Indices = std::make_index_sequence>>; + using indices = std::make_index_sequence>>; [&obj, &t, args...](std::index_sequence) { (obj.emplace(std::get<0>(std::get(t)), std::get<1>(std::get(t)), args...), ...); - }(Indices{}); + }(indices{}); } template requires (detail::key_value_like && ...) && requires(writer::object_ref& obj) { @@ -4222,11 +4225,11 @@ namespace yyjson } static auto to_json(writer::object_ref& obj, Tuple&& t, Args... args) { - using Indices = std::make_index_sequence>>; + using indices = std::make_index_sequence>>; [&obj, t = std::move(t), args...](std::index_sequence) mutable { (obj.emplace(std::get<0>(std::get(std::move(t))), std::get<1>(std::get(std::move(t))), args...), ...); - }(Indices{}); + }(indices{}); } };