# Check whether NO Tab is used, replaced with spaces
GeneralCheckNoTab=1
# The width of Tab
GeneralCheckTabWidth=2
# Check whether the indentation is followed coding style
GeneralCheckIndentation=1
# The width of indentation
GeneralCheckIndentationWidth=2
# Check whether no line is exceeding defined widty
GeneralCheckLine=1
# The width of a line
GeneralCheckLineWidth=120
# Check whether no use of _asm in the source file
GeneralCheckNo_Asm=1
# Check whether no use of "#progma" in source file except "#pragma pack(#)".
GeneralCheckNoProgma=1
# Check whether there is a carriage return at the end of the file
GeneralCheckCarriageReturn=1
# Check whether the file exists
GeneralCheckFileExistence=1
#
# Space Checking
#
SpaceCheckAll=1
#
# Predicate Expression Checking
#
PredicateExpressionCheckAll=0
# Check whether Boolean values, variable type BOOLEAN not use explicit comparisons to TRUE or FALSE
PredicateExpressionCheckBooleanValue=1
# Check whether Non-Boolean comparisons use a compare operator (==, !=, >, < >=, <=).
PredicateExpressionCheckNonBooleanOperator=1
# Check whether a comparison of any pointer to zero must be done via the NULL type
PredicateExpressionCheckComparisonNullType=1
#
# Headers Checking
#
HeaderCheckAll=0
# Check whether File header exists
HeaderCheckFile=1
# Check whether Function header exists
HeaderCheckFunction=1
#
# C Function Layout Checking
#
CFunctionLayoutCheckAll=0
# Check whether return type exists and in the first line
CFunctionLayoutCheckReturnType=1
# Check whether any optional functional modifiers exist and next to the return type
CFunctionLayoutCheckOptionalFunctionalModifier=1
# Check whether the next line contains the function name, left justified, followed by the beginning of the parameter list
# Check whether the closing parenthesis is on its own line and also indented two spaces
CFunctionLayoutCheckFunctionName=1
# Check whether the function prototypes in include files have the same form as function definitions
CFunctionLayoutCheckFunctionPrototype=1
# Check whether the body of a function is contained by open and close braces that must be in the first column
CFunctionLayoutCheckFunctionBody=1
# Check whether the data declarations is the first code in a module.
CFunctionLayoutCheckDataDeclaration=1
# Check whether no initialization of a variable as part of its declaration
CFunctionLayoutCheckNoInitOfVariable=1
# Check whether no use of STATIC for functions
CFunctionLayoutCheckNoStatic=1
#
# Include Files Checking
#
IncludeFileCheckAll=0
#Check whether having include files with same name
IncludeFileCheckSameName=1
# Check whether all include file contents is guarded by a #ifndef statement.
# the #ifndef must be the first line of code following the file header comment
# the #endif must appear on the last line in the file
IncludeFileCheckIfndefStatement=1
# Check whether include files contain only public or only private data
# Check whether include files NOT contain code or define data variables
IncludeFileCheckData=1
#
# Declarations and Data Types Checking
#
DeclarationDataTypeCheckAll=0
# Check whether no use of int, unsigned, char, void, static, long in any .c, .h or .asl files.
DeclarationDataTypeCheckNoUseCType=1
# Check whether the modifiers IN, OUT, OPTIONAL, and UNALIGNED are used only to qualify arguments to a function and should not appear in a data type declaration
DeclarationDataTypeCheckInOutModifier=1
# Check whether the EFIAPI modifier should be used at the entry of drivers, events, and member functions of protocols
DeclarationDataTypeCheckEFIAPIModifier=1
# Check whether Enumerated Type has a 'typedef' and the name is capital
DeclarationDataTypeCheckEnumeratedType=1
# Check whether Structure Type has a 'typedef' and the name is capital
DeclarationDataTypeCheckStructureDeclaration=1
# Check whether having same Structure
DeclarationDataTypeCheckSameStructure=1
# Check whether Union Type has a 'typedef' and the name is capital
DeclarationDataTypeCheckUnionType=1
#
# Naming Conventions Checking
#
NamingConventionCheckAll=0
# Check whether only capital letters are used for #define declarations
NamingConventionCheckDefineStatement=1
# Check whether only capital letters are used for typedef declarations
NamingConventionCheckTypedefStatement=1
# Check whether the #ifndef at the start of an include file uses both prefix and postfix underscore characters, '_'.
NamingConventionCheckIfndefStatement=1
# Rule for path name, variable name and function name
# 1. First character should be upper case
# 2. Existing lower case in a word
# 3. No space existence
# 4. Global variable name must start by a 'g'
# Check whether the path name followed the rule
NamingConventionCheckPathName=1
# Check whether the variable name followed the rule
NamingConventionCheckVariableName=1
# Check whether the function name followed the rule
NamingConventionCheckFunctionName=1
# Check whether NO use short variable name with single character
NamingConventionCheckSingleCharacterVariable=1
#
# Doxygen Checking
#
DoxygenCheckAll=0
# Check whether the file headers are followed Doxygen special documentation blocks in section 2.3.5
DoxygenCheckFileHeader=1
# Check whether the function headers are followed Doxygen special documentation blocks in section 2.3.5
DoxygenCheckFunctionHeader=1
# Check whether the first line of text in a comment block is a brief description of the element being documented.
# The brief description must end with a period.
DoxygenCheckCommentDescription=1
# Check whether comment lines with '///< ... text ...' format, if it is used, it should be after the code section.
DoxygenCheckCommentFormat=1
# Check whether only Doxygen commands allowed to mark the code are @bug and @todo.
DoxygenCheckCommand=1
#
# Meta-Data File Processing Checking
#
MetaDataFileCheckAll=0
# Check whether each file defined in meta-data exists
MetaDataFileCheckPathName=1
# Generate a list for all files defined in meta-data files
MetaDataFileCheckGenerateFileList=1
# The path of log file
MetaDataFileCheckPathOfGenerateFileList=File.log
# Check whether all Library Instances defined for a given module (or dependent library instance) match the module's type.
# Each Library Instance must specify the Supported Module Types in its INF file,
# and any module specifying the library instance must be one of the supported types.
MetaDataFileCheckLibraryInstance=1
# Check whether a Library Instance has been defined for all dependent library classes
MetaDataFileCheckLibraryInstanceDependent=1
# Check whether the Library Instances specified by the LibraryClasses sections are listed in order of dependencies
MetaDataFileCheckLibraryInstanceOrder=1
# Check whether the unnecessary inclusion of library classes in the INF file
MetaDataFileCheckLibraryNoUse=1
# Check whether an INF file is specified in the FDF file, but not in the DSC file, then the INF file must be for a Binary module only
MetaDataFileCheckBinaryInfInFdf=1
# Not to report error and warning related OS include file such as "windows.h" and "stdio.h".
# Check whether a PCD is set in a DSC file or the FDF file, but not in both.
MetaDataFileCheckPcdDuplicate=1
# Check whether PCD settings in the FDF file can only be related to flash.
MetaDataFileCheckPcdFlash=1
# Check whether PCDs used in INF files but not specified in DSC or FDF files
MetaDataFileCheckPcdNoUse=1
# Check whether having duplicate guids defined for Guid/Protocol/Ppi
MetaDataFileCheckGuidDuplicate=1
# Check whether all files under module directory are described in INF files
MetaDataFileCheckModuleFileNoUse=1
# Check whether the PCD is correctly used in C function via its type