class Ameba::Rule::Style::LargeNumbers

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

Defined in:

ameba/rule/style/large_numbers.cr

Constant Summary

MSG = "Large numbers should be written with underscores: %s"

Constructors

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

parsed_doc parsed_doc

Constructor Detail

def self.new(ctx : YAML::ParseContext, node : YAML::Nodes::Node) #

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

[View source]

Instance Method Detail

def description : String #

def description=(description : String) #

def enabled : Bool #

def enabled=(enabled : Bool) #

def excluded : Array(String) | Nil #

def excluded=(excluded : Array(String) | Nil) #

def int_min_digits : Int32 #

def int_min_digits=(int_min_digits : Int32) #

def severity : Ameba::Severity #

def severity=(severity : Ameba::Severity) #

def test(source) #

[View source]