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:

10000
141592654
5.12345

And has to be rewritten as the following:

10_000
141_592_654
5.123_45

YAML configuration example:

Style/LargeNumbers:
  Enabled: true
  IntMinDigits: 5 # i.e. integers higher than 9999

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:

10000
141592654
5.12345

And has to be rewritten as the following:

10_000
141_592_654
5.123_45

YAML configuration example:

Style/LargeNumbers:
  Enabled: true
  IntMinDigits: 5 # i.e. integers higher than 9999

[View source]

Instance Method Detail

def description : String #

def description=(description : String) #

def enabled : Bool #

def enabled=(enabled : Bool) #

def excluded : Array(String)? #

def excluded=(excluded : Array(String)?) #

def int_min_digits : Int32 #

def int_min_digits=(int_min_digits : Int32) #

def severity : Ameba::Severity #

def severity=(severity) #

def test(source) #

[View source]