Ameba::Rule::Lint::SignalTrap
Inherits Ameba::AST::Util < YAML::Serializable < Ameba::Rule::Base < Ameba::Config::RuleConfig < Reference < Object
A rule that reports when Signal::INT/HUP/TERM.trap is used,
which should be replaced with Process.on_terminate instead -
a more portable alternative.
For example, this is considered invalid:
Signal::INT.trap do
shutdown
end
And it should be written as this:
Process.on_terminate do
shutdown
end
YAML configuration example:
Lint/SignalTrap:
Enabled: true
Constants
Constructors
A rule that reports when Signal::INT/HUP/TERM.trap is used,
which should be replaced with Process.on_terminate instead -
a more portable alternative.
For example, this is considered invalid:
Signal::INT.trap do
shutdown
end
And it should be written as this:
Process.on_terminate do
shutdown
end
YAML configuration example:
Lint/SignalTrap:
Enabled: true
Class methods
Returns true if this rule is deprecated, false otherwise.
Returns the deprecation reason for this rule, if there is any.
Returns the documentation URL for this rule.
Ameba::Rule::Lint::Syntax.documentation_url
# => "https://crystal-ameba.org/api/master/Ameba/Rule/Lint/Syntax.html"
Returns the documentation for this rule, if there is any.
module Ameba
# This is a test rule.
# Does nothing.
class Rule::MyRule < Rule::Base
def test(source)
end
end
end
Ameba::Rule::MyRule.parsed_doc # => "This is a test rule.\nDoes nothing."