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

Macros inherited from class Ameba::Rule::Base

issue_for(*args) issue_for

Macros inherited from module Ameba::Config::RuleConfig

properties(&block) properties

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]
def self.new(*, __context_for_yaml_serializable ctx : YAML::ParseContext, __node_for_yaml_serializable node : YAML::Nodes::Node) #

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]