
# By default, SwiftLint uses a set of sensible default rules you can adjust:
disabled_rules: # rule identifiers turned on by default to exclude from running
  - colon
  - control_statement
  - identifier_name
  - force_try

opt_in_rules: # some rules are turned off by default, so you need to opt-in
  - empty_count # Find all the available rules by running: `swiftlint rules`

# Alternatively, specify all rules explicitly by uncommenting this option:
# only_rules: # delete `disabled_rules` & `opt_in_rules` if using this
#   - empty_parameters
#   - vertical_whitespace

analyzer_rules: # Rules run by `swiftlint analyze` (experimental)
  - explicit_self

# configurable rules can be customized from this configuration file
# binary rules can set their severity level
force_cast: warning # implicitly
# rules that have both warning and error levels, can set just the warning level
# implicitly
line_length: 180
# they can set both implicitly with an array
type_body_length:
  - 400 # warning
  - 500 # error
# or they can set both explicitly
file_length:
  warning: 600
  error: 1200
# naming rules can set warnings/errors for min_length and max_length
# additionally they can set excluded names
type_name:
  min_length: 1 # only warning
  max_length: # warning and error
    warning: 40
    error: 50
  excluded:
    - iPhone
    - BN
    - ECC
    - PSI
    - Log
  allowed_symbols: ["_"] # these are allowed in type names
identifier_name:
  min_length: 1 # only min_length
  excluded: # excluded via string array
    - id
    - URL
    - GlobalAPIKey
    - SHA256_SIZE
    - SHA384_SIZE
    - TWO
    - EULER_THEOREM
    - Log
reporter: "xcode" # reporter type (xcode, json, csv, checkstyle, codeclimate, junit, html, emoji, sonarqube, markdown, github-actions-logging)
