+

+ + class Ameba::Rule::Lint::Typos + +

+ + + + + + + +

+ + + + Overview +

+ +

A rule that reports typos found in source files.

+

NOTE Needs typos CLI tool.

+

NOTE See the chapter on false positives.

+

YAML configuration example:

+
Lint/Typos:
+  Enabled: true
+  BinPath: ~
+  FailOnError: false
+ + + + + +

+ + + + Included Modules +

+
    + +
  • YAML::Serializable
  • + +
  • YAML::Serializable::Strict
  • + +
+ + + + + + + + + + +

+ + + + Defined in: +

+ + + + ameba/rule/lint/typos.cr + + +
+ + + + + +

+ + + + Constant Summary +

+ +
+ +
+ BIN_PATH = Process.find_executable("typos") +
+ + +
+ MSG = "Typo found: %s -> %s" +
+ + +
+ + + +

+ + + + Constructors +

+ + + + +

+ + + + Class Method Summary +

+ + + + +

+ + + + Instance Method Summary +

+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +

Instance methods inherited from class Ameba::Rule::Base

+ + + + ==(other) + ==, + + + + catch(source : Source) + catch, + + + + excluded?(source) + excluded?, + + + + group + group, + + + + hash + hash, + + + + name + name, + + + + special? + special?, + + + + test(source : Source, node : Crystal::ASTNode, *opts)
test(source : Source)
+ test
+ + + + + + + + + +

Class methods inherited from class Ameba::Rule::Base

+ + + + default_severity : Ameba::Severity + default_severity + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

+ + + + Constructor Detail +

+ +
+
+ + def self.new(ctx : YAML::ParseContext, node : YAML::Nodes::Node) + + # +
+ +
+
+ +
+
+ +
+
+ + def self.new(config = nil) + + # +
+ +
+ +

A rule that reports typos found in source files.

+

NOTE Needs typos CLI tool.

+

NOTE See the chapter on false positives.

+

YAML configuration example:

+
Lint/Typos:
+  Enabled: true
+  BinPath: ~
+  FailOnError: false
+
+ +
+
+ + [View source] + +
+
+ + + + +

+ + + + Class Method Detail +

+ +
+
+ + def self.parsed_doc : String | Nil + + # +
+ +
+ +

Returns documentation for this rule, if there is any.

+
module Ameba
+  # This is a test rule.
+  # Does nothing.
+  class MyRule < Ameba::Rule::Base
+    def test(source)
+    end
+  end
+end
+
+MyRule.parsed_doc # => "This is a test rule.\nDoes nothing."
+
+ +
+
+ +
+
+ + + + +

+ + + + Instance Method Detail +

+ +
+
+ + def bin_path : String | Nil + + # +
+ +
+
+ + [View source] + +
+
+ +
+
+ + def bin_path=(bin_path : Nil | String) + + # +
+ +
+
+ +
+
+ +
+
+ + def description : String + + # +
+ +
+
+ +
+
+ +
+
+ + def description=(description : String) + + # +
+ +
+
+ +
+
+ +
+
+ + def enabled=(enabled : Bool) + + # +
+ +
+
+ +
+
+ +
+
+ + def enabled? : Bool + + # +
+ +
+
+ +
+
+ +
+
+ + def excluded : Array(String) | Nil + + # +
+ +
+
+ +
+
+ +
+
+ + def excluded=(excluded : Array(String) | Nil) + + # +
+ +
+
+ +
+
+ +
+
+ + def fail_on_error=(fail_on_error : Bool) + + # +
+ +
+
+ +
+
+ +
+
+ + def fail_on_error? : Bool + + # +
+ +
+
+ +
+
+ +
+
+ + def severity : Ameba::Severity + + # +
+ +
+
+ +
+
+ +
+
+ + def severity=(severity : Ameba::Severity) + + # +
+ +
+
+ +
+
+ +
+
+ + def test(source : Source) + + # +
+ +
+ +
+ Description copied from class Ameba::Rule::Base +
+ +

This method is designed to test the source passed in. If source has issues +that are tested by this rule, it should add an issue.

+

Be default it uses a node visitor to traverse all the nodes in the source.

+

NOTE Must be overridden for other type of rules.

+
+ +
+
+ + [View source] + +
+
+ + + + + +