Draft:SwiftLint
This article, Draft:SwiftLint, has recently been created via the Articles for creation process. Please check to see if the reviewer has accidentally left this template after accepting the draft and take appropriate action as necessary.
Reviewer tools: Preload talk Inform author |
This article, Draft:SwiftLint, has recently been created via the Articles for creation process. Please check to see if the reviewer has accidentally left this template after accepting the draft and take appropriate action as necessary.
Reviewer tools: Preload talk Inform author |
Original author(s) | JP Simard |
---|---|
Initial release | May 30, 2015 |
Written in | Swift |
Operating system | macOS, Linux |
Available in | English |
Type | Static code analysis |
License | MIT |
Website | github |
SwiftLint,[1] is a static code analysis tool for the Swift programming language, that aims to enforce good Swift style and conventions. The creator and lead developer is JP Simard. It is the most commonly recommended Swift linter[2][3][4][5].
SwiftLint is free software under the MIT license.
Features
SwiftLint's checks are implemented as rules, which are either on by default, or opt-in.
Over 230 rules are built in to SwiftLint, and users can define additional custom rules using regular expressions.
For example, the identifier_name
[6] rule warns, or errors if identifiers (e.g. variable and function names) are too short or too long, and allows the warning and error thresholds for length, as well as identifiers that should be ignored by the rule (such as x
and y
), to be configured.
SwiftLint is also capable of auto-correcting certain kinds of violations.
SwiftLint has an analyzer mode, which can check for unused code and imports using the abstract syntax tree, but runs more slowly than the usual lint mode.
References
- ^ "SwiftLint". Website.
- ^ "SwiftLint in Depth - Kodeco". Website.
- ^ Vilmart, Florent; Scalzo, Gordiano; De Simone, Sergio (2018). Hands-On Design Patterns with Swift. Birmingham, UK: Pragmatic Bookshelf. ISBN 978-1789138511.
- ^ Nolan, Godfrey (2016). Agile Swift: Swift Programming Using Agile Tools and Techniques. Apress. ISBN 978-1484221020.
- ^ in 't Veen, Tjeerd (2018). Swift in Depth. Manning. ISBN 978-1638356165.
- ^ "identifier_name". Website.
See also
Lua error in mw.title.lua at line 346: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').