class Ameba::Rule::Style::LargeNumbers
- Ameba::Rule::Style::LargeNumbers
- Ameba::Rule::Base
- Reference
- Object
Overview
A rule that disallows usage of large numbers without underscore. These do not affect the value of the number, but can help read large numbers more easily.
For example, these are considered invalid:
100000
141592654
5.123456
And has to be rewritten as the following:
100_000
141_592_654
5.123_456
YAML configuration example:
Style/LargeNumbers:
Enabled: true
IntMinDigits: 6 # i.e. integers higher than 99999
Included Modules
- YAML::Serializable
- YAML::Serializable::Strict
Defined in:
ameba/rule/style/large_numbers.crConstant Summary
-
MSG =
"Large numbers should be written with underscores: %s"
Constructors
- .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
-
.new(config = nil)
A rule that disallows usage of large numbers without underscore.
Class Method Summary
-
.parsed_doc : String | Nil
Returns documentation for this rule, if there is any.
Instance Method Summary
- #description : String
- #description=(description : String)
- #enabled=(enabled : Bool)
- #enabled? : Bool
- #excluded : Array(String) | Nil
- #excluded=(excluded : Array(String) | Nil)
- #int_min_digits : Int32
- #int_min_digits=(int_min_digits : Int32)
- #severity : Ameba::Severity
- #severity=(severity : Ameba::Severity)
- #test(source)
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
Macros inherited from class Ameba::Rule::Base
issue_for(*args, **kwargs, &block)
issue_for
Macros inherited from module Ameba::Config::RuleConfig
properties(&block)
properties
Constructor Detail
def self.new(config = nil)
#
A rule that disallows usage of large numbers without underscore. These do not affect the value of the number, but can help read large numbers more easily.
For example, these are considered invalid:
100000
141592654
5.123456
And has to be rewritten as the following:
100_000
141_592_654
5.123_456
YAML configuration example:
Style/LargeNumbers:
Enabled: true
IntMinDigits: 6 # i.e. integers higher than 99999
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."