shard-ameba/Ameba/Reportable.html

1444 lines
55 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Crystal Docs 1.11.2">
<meta name="crystal_docs.project_version" content="master">
<meta name="crystal_docs.project_name" content="ameba">
<link href="../css/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../js/doc.js"></script>
<meta name="repository-name" content="ameba">
<title>Ameba::Reportable - ameba master</title>
<script type="text/javascript">
CrystalDocs.base_path = "../";
</script>
</head>
<body>
<svg class="hidden">
<symbol id="octicon-link" viewBox="0 0 16 16">
<path fill="currentColor" fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path>
</symbol>
</svg>
<input type="checkbox" id="sidebar-btn">
<label for="sidebar-btn" id="sidebar-btn-label">
<svg class="open" xmlns="http://www.w3.org/2000/svg" height="2em" width="2em" viewBox="0 0 512 512"><title>Open Sidebar</title><path fill="currentColor" d="M80 96v64h352V96H80zm0 112v64h352v-64H80zm0 112v64h352v-64H80z"></path></svg>
<svg class="close" xmlns="http://www.w3.org/2000/svg" width="2em" height="2em" viewBox="0 0 512 512"><title>Close Sidebar</title><path fill="currentColor" d="m118.6 73.4-45.2 45.2L210.7 256 73.4 393.4l45.2 45.2L256 301.3l137.4 137.3 45.2-45.2L301.3 256l137.3-137.4-45.2-45.2L256 210.7Z"></path></svg>
</label>
<div class="sidebar">
<div class="sidebar-header">
<div class="search-box">
<input type="search" class="search-input" placeholder="Search..." spellcheck="false" aria-label="Search">
</div>
<div class="project-summary">
<h1 class="project-name">
<a href="../index.html">
ameba
</a>
</h1>
<span class="project-version">
master
</span>
</div>
</div>
<div class="search-results hidden">
<ul class="search-list"></ul>
</div>
<div class="types-list">
<ul>
<li class="parent open current" data-id="ameba/Ameba" data-name="ameba">
<a href="../Ameba.html">Ameba</a>
<ul>
<li class="parent " data-id="ameba/Ameba/AST" data-name="ameba::ast">
<a href="../Ameba/AST.html">AST</a>
<ul>
<li class=" " data-id="ameba/Ameba/AST/Argument" data-name="ameba::ast::argument">
<a href="../Ameba/AST/Argument.html">Argument</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Assignment" data-name="ameba::ast::assignment">
<a href="../Ameba/AST/Assignment.html">Assignment</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/BaseVisitor" data-name="ameba::ast::basevisitor">
<a href="../Ameba/AST/BaseVisitor.html">BaseVisitor</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Branch" data-name="ameba::ast::branch">
<a href="../Ameba/AST/Branch.html">Branch</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Branchable" data-name="ameba::ast::branchable">
<a href="../Ameba/AST/Branchable.html">Branchable</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/CountingVisitor" data-name="ameba::ast::countingvisitor">
<a href="../Ameba/AST/CountingVisitor.html">CountingVisitor</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/FlowExpression" data-name="ameba::ast::flowexpression">
<a href="../Ameba/AST/FlowExpression.html">FlowExpression</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/FlowExpressionVisitor" data-name="ameba::ast::flowexpressionvisitor">
<a href="../Ameba/AST/FlowExpressionVisitor.html">FlowExpressionVisitor</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/InstanceVariable" data-name="ameba::ast::instancevariable">
<a href="../Ameba/AST/InstanceVariable.html">InstanceVariable</a>
</li>
<li class="parent " data-id="ameba/Ameba/AST/NodeVisitor" data-name="ameba::ast::nodevisitor">
<a href="../Ameba/AST/NodeVisitor.html">NodeVisitor</a>
<ul>
<li class=" " data-id="ameba/Ameba/AST/NodeVisitor/Category" data-name="ameba::ast::nodevisitor::category">
<a href="../Ameba/AST/NodeVisitor/Category.html">Category</a>
</li>
</ul>
</li>
<li class=" " data-id="ameba/Ameba/AST/RedundantControlExpressionVisitor" data-name="ameba::ast::redundantcontrolexpressionvisitor">
<a href="../Ameba/AST/RedundantControlExpressionVisitor.html">RedundantControlExpressionVisitor</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Reference" data-name="ameba::ast::reference">
<a href="../Ameba/AST/Reference.html">Reference</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Scope" data-name="ameba::ast::scope">
<a href="../Ameba/AST/Scope.html">Scope</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/ScopeVisitor" data-name="ameba::ast::scopevisitor">
<a href="../Ameba/AST/ScopeVisitor.html">ScopeVisitor</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/TopLevelNodesVisitor" data-name="ameba::ast::toplevelnodesvisitor">
<a href="../Ameba/AST/TopLevelNodesVisitor.html">TopLevelNodesVisitor</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/TypeDecVariable" data-name="ameba::ast::typedecvariable">
<a href="../Ameba/AST/TypeDecVariable.html">TypeDecVariable</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Util" data-name="ameba::ast::util">
<a href="../Ameba/AST/Util.html">Util</a>
</li>
<li class=" " data-id="ameba/Ameba/AST/Variable" data-name="ameba::ast::variable">
<a href="../Ameba/AST/Variable.html">Variable</a>
</li>
</ul>
</li>
<li class=" " data-id="ameba/Ameba/Config" data-name="ameba::config">
<a href="../Ameba/Config.html">Config</a>
</li>
<li class="parent " data-id="ameba/Ameba/Ext" data-name="ameba::ext">
<a href="../Ameba/Ext.html">Ext</a>
<ul>
<li class=" " data-id="ameba/Ameba/Ext/Location" data-name="ameba::ext::location">
<a href="../Ameba/Ext/Location.html">Location</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Formatter" data-name="ameba::formatter">
<a href="../Ameba/Formatter.html">Formatter</a>
<ul>
<li class=" " data-id="ameba/Ameba/Formatter/BaseFormatter" data-name="ameba::formatter::baseformatter">
<a href="../Ameba/Formatter/BaseFormatter.html">BaseFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/DisabledFormatter" data-name="ameba::formatter::disabledformatter">
<a href="../Ameba/Formatter/DisabledFormatter.html">DisabledFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/DotFormatter" data-name="ameba::formatter::dotformatter">
<a href="../Ameba/Formatter/DotFormatter.html">DotFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/ExplainFormatter" data-name="ameba::formatter::explainformatter">
<a href="../Ameba/Formatter/ExplainFormatter.html">ExplainFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/FlycheckFormatter" data-name="ameba::formatter::flycheckformatter">
<a href="../Ameba/Formatter/FlycheckFormatter.html">FlycheckFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/JSONFormatter" data-name="ameba::formatter::jsonformatter">
<a href="../Ameba/Formatter/JSONFormatter.html">JSONFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/TODOFormatter" data-name="ameba::formatter::todoformatter">
<a href="../Ameba/Formatter/TODOFormatter.html">TODOFormatter</a>
</li>
<li class=" " data-id="ameba/Ameba/Formatter/Util" data-name="ameba::formatter::util">
<a href="../Ameba/Formatter/Util.html">Util</a>
</li>
</ul>
</li>
<li class=" " data-id="ameba/Ameba/GlobUtils" data-name="ameba::globutils">
<a href="../Ameba/GlobUtils.html">GlobUtils</a>
</li>
<li class="parent " data-id="ameba/Ameba/InlineComments" data-name="ameba::inlinecomments">
<a href="../Ameba/InlineComments.html">InlineComments</a>
<ul>
<li class=" " data-id="ameba/Ameba/InlineComments/Action" data-name="ameba::inlinecomments::action">
<a href="../Ameba/InlineComments/Action.html">Action</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Issue" data-name="ameba::issue">
<a href="../Ameba/Issue.html">Issue</a>
<ul>
<li class=" " data-id="ameba/Ameba/Issue/Status" data-name="ameba::issue::status">
<a href="../Ameba/Issue/Status.html">Status</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Presenter" data-name="ameba::presenter">
<a href="../Ameba/Presenter.html">Presenter</a>
<ul>
<li class=" " data-id="ameba/Ameba/Presenter/BasePresenter" data-name="ameba::presenter::basepresenter">
<a href="../Ameba/Presenter/BasePresenter.html">BasePresenter</a>
</li>
<li class=" " data-id="ameba/Ameba/Presenter/RuleCollectionPresenter" data-name="ameba::presenter::rulecollectionpresenter">
<a href="../Ameba/Presenter/RuleCollectionPresenter.html">RuleCollectionPresenter</a>
</li>
<li class=" " data-id="ameba/Ameba/Presenter/RulePresenter" data-name="ameba::presenter::rulepresenter">
<a href="../Ameba/Presenter/RulePresenter.html">RulePresenter</a>
</li>
</ul>
</li>
<li class=" current" data-id="ameba/Ameba/Reportable" data-name="ameba::reportable">
<a href="../Ameba/Reportable.html">Reportable</a>
</li>
<li class="parent " data-id="ameba/Ameba/Rule" data-name="ameba::rule">
<a href="../Ameba/Rule.html">Rule</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Base" data-name="ameba::rule::base">
<a href="../Ameba/Rule/Base.html">Base</a>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Documentation" data-name="ameba::rule::documentation">
<a href="../Ameba/Rule/Documentation.html">Documentation</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Documentation/Documentation" data-name="ameba::rule::documentation::documentation">
<a href="../Ameba/Rule/Documentation/Documentation.html">Documentation</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Documentation/DocumentationAdmonition" data-name="ameba::rule::documentation::documentationadmonition">
<a href="../Ameba/Rule/Documentation/DocumentationAdmonition.html">DocumentationAdmonition</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Layout" data-name="ameba::rule::layout">
<a href="../Ameba/Rule/Layout.html">Layout</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Layout/LineLength" data-name="ameba::rule::layout::linelength">
<a href="../Ameba/Rule/Layout/LineLength.html">LineLength</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Layout/TrailingBlankLines" data-name="ameba::rule::layout::trailingblanklines">
<a href="../Ameba/Rule/Layout/TrailingBlankLines.html">TrailingBlankLines</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Layout/TrailingWhitespace" data-name="ameba::rule::layout::trailingwhitespace">
<a href="../Ameba/Rule/Layout/TrailingWhitespace.html">TrailingWhitespace</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Lint" data-name="ameba::rule::lint">
<a href="../Ameba/Rule/Lint.html">Lint</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Lint/AmbiguousAssignment" data-name="ameba::rule::lint::ambiguousassignment">
<a href="../Ameba/Rule/Lint/AmbiguousAssignment.html">AmbiguousAssignment</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/BadDirective" data-name="ameba::rule::lint::baddirective">
<a href="../Ameba/Rule/Lint/BadDirective.html">BadDirective</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/ComparisonToBoolean" data-name="ameba::rule::lint::comparisontoboolean">
<a href="../Ameba/Rule/Lint/ComparisonToBoolean.html">ComparisonToBoolean</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/DebugCalls" data-name="ameba::rule::lint::debugcalls">
<a href="../Ameba/Rule/Lint/DebugCalls.html">DebugCalls</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/DebuggerStatement" data-name="ameba::rule::lint::debuggerstatement">
<a href="../Ameba/Rule/Lint/DebuggerStatement.html">DebuggerStatement</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/DuplicatedRequire" data-name="ameba::rule::lint::duplicatedrequire">
<a href="../Ameba/Rule/Lint/DuplicatedRequire.html">DuplicatedRequire</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/EmptyEnsure" data-name="ameba::rule::lint::emptyensure">
<a href="../Ameba/Rule/Lint/EmptyEnsure.html">EmptyEnsure</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/EmptyExpression" data-name="ameba::rule::lint::emptyexpression">
<a href="../Ameba/Rule/Lint/EmptyExpression.html">EmptyExpression</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/EmptyLoop" data-name="ameba::rule::lint::emptyloop">
<a href="../Ameba/Rule/Lint/EmptyLoop.html">EmptyLoop</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/Formatting" data-name="ameba::rule::lint::formatting">
<a href="../Ameba/Rule/Lint/Formatting.html">Formatting</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/HashDuplicatedKey" data-name="ameba::rule::lint::hashduplicatedkey">
<a href="../Ameba/Rule/Lint/HashDuplicatedKey.html">HashDuplicatedKey</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/LiteralAssignmentsInExpressions" data-name="ameba::rule::lint::literalassignmentsinexpressions">
<a href="../Ameba/Rule/Lint/LiteralAssignmentsInExpressions.html">LiteralAssignmentsInExpressions</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/LiteralInCondition" data-name="ameba::rule::lint::literalincondition">
<a href="../Ameba/Rule/Lint/LiteralInCondition.html">LiteralInCondition</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/LiteralInInterpolation" data-name="ameba::rule::lint::literalininterpolation">
<a href="../Ameba/Rule/Lint/LiteralInInterpolation.html">LiteralInInterpolation</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/LiteralsComparison" data-name="ameba::rule::lint::literalscomparison">
<a href="../Ameba/Rule/Lint/LiteralsComparison.html">LiteralsComparison</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/MissingBlockArgument" data-name="ameba::rule::lint::missingblockargument">
<a href="../Ameba/Rule/Lint/MissingBlockArgument.html">MissingBlockArgument</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/NotNil" data-name="ameba::rule::lint::notnil">
<a href="../Ameba/Rule/Lint/NotNil.html">NotNil</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/NotNilAfterNoBang" data-name="ameba::rule::lint::notnilafternobang">
<a href="../Ameba/Rule/Lint/NotNilAfterNoBang.html">NotNilAfterNoBang</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/PercentArrays" data-name="ameba::rule::lint::percentarrays">
<a href="../Ameba/Rule/Lint/PercentArrays.html">PercentArrays</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/RandZero" data-name="ameba::rule::lint::randzero">
<a href="../Ameba/Rule/Lint/RandZero.html">RandZero</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/RedundantStringCoercion" data-name="ameba::rule::lint::redundantstringcoercion">
<a href="../Ameba/Rule/Lint/RedundantStringCoercion.html">RedundantStringCoercion</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/RedundantWithIndex" data-name="ameba::rule::lint::redundantwithindex">
<a href="../Ameba/Rule/Lint/RedundantWithIndex.html">RedundantWithIndex</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/RedundantWithObject" data-name="ameba::rule::lint::redundantwithobject">
<a href="../Ameba/Rule/Lint/RedundantWithObject.html">RedundantWithObject</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/ShadowedArgument" data-name="ameba::rule::lint::shadowedargument">
<a href="../Ameba/Rule/Lint/ShadowedArgument.html">ShadowedArgument</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/ShadowedException" data-name="ameba::rule::lint::shadowedexception">
<a href="../Ameba/Rule/Lint/ShadowedException.html">ShadowedException</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/ShadowingOuterLocalVar" data-name="ameba::rule::lint::shadowingouterlocalvar">
<a href="../Ameba/Rule/Lint/ShadowingOuterLocalVar.html">ShadowingOuterLocalVar</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/SharedVarInFiber" data-name="ameba::rule::lint::sharedvarinfiber">
<a href="../Ameba/Rule/Lint/SharedVarInFiber.html">SharedVarInFiber</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/SpecFilename" data-name="ameba::rule::lint::specfilename">
<a href="../Ameba/Rule/Lint/SpecFilename.html">SpecFilename</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/SpecFocus" data-name="ameba::rule::lint::specfocus">
<a href="../Ameba/Rule/Lint/SpecFocus.html">SpecFocus</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/Syntax" data-name="ameba::rule::lint::syntax">
<a href="../Ameba/Rule/Lint/Syntax.html">Syntax</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/Typos" data-name="ameba::rule::lint::typos">
<a href="../Ameba/Rule/Lint/Typos.html">Typos</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/UnneededDisableDirective" data-name="ameba::rule::lint::unneededdisabledirective">
<a href="../Ameba/Rule/Lint/UnneededDisableDirective.html">UnneededDisableDirective</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/UnreachableCode" data-name="ameba::rule::lint::unreachablecode">
<a href="../Ameba/Rule/Lint/UnreachableCode.html">UnreachableCode</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/UnusedArgument" data-name="ameba::rule::lint::unusedargument">
<a href="../Ameba/Rule/Lint/UnusedArgument.html">UnusedArgument</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/UnusedBlockArgument" data-name="ameba::rule::lint::unusedblockargument">
<a href="../Ameba/Rule/Lint/UnusedBlockArgument.html">UnusedBlockArgument</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/UselessAssign" data-name="ameba::rule::lint::uselessassign">
<a href="../Ameba/Rule/Lint/UselessAssign.html">UselessAssign</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Lint/UselessConditionInWhen" data-name="ameba::rule::lint::uselessconditioninwhen">
<a href="../Ameba/Rule/Lint/UselessConditionInWhen.html">UselessConditionInWhen</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Metrics" data-name="ameba::rule::metrics">
<a href="../Ameba/Rule/Metrics.html">Metrics</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Metrics/CyclomaticComplexity" data-name="ameba::rule::metrics::cyclomaticcomplexity">
<a href="../Ameba/Rule/Metrics/CyclomaticComplexity.html">CyclomaticComplexity</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Naming" data-name="ameba::rule::naming">
<a href="../Ameba/Rule/Naming.html">Naming</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Naming/AccessorMethodName" data-name="ameba::rule::naming::accessormethodname">
<a href="../Ameba/Rule/Naming/AccessorMethodName.html">AccessorMethodName</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/AsciiIdentifiers" data-name="ameba::rule::naming::asciiidentifiers">
<a href="../Ameba/Rule/Naming/AsciiIdentifiers.html">AsciiIdentifiers</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/BinaryOperatorParameterName" data-name="ameba::rule::naming::binaryoperatorparametername">
<a href="../Ameba/Rule/Naming/BinaryOperatorParameterName.html">BinaryOperatorParameterName</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/BlockParameterName" data-name="ameba::rule::naming::blockparametername">
<a href="../Ameba/Rule/Naming/BlockParameterName.html">BlockParameterName</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/ConstantNames" data-name="ameba::rule::naming::constantnames">
<a href="../Ameba/Rule/Naming/ConstantNames.html">ConstantNames</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/Filename" data-name="ameba::rule::naming::filename">
<a href="../Ameba/Rule/Naming/Filename.html">Filename</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/MethodNames" data-name="ameba::rule::naming::methodnames">
<a href="../Ameba/Rule/Naming/MethodNames.html">MethodNames</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/PredicateName" data-name="ameba::rule::naming::predicatename">
<a href="../Ameba/Rule/Naming/PredicateName.html">PredicateName</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/QueryBoolMethods" data-name="ameba::rule::naming::queryboolmethods">
<a href="../Ameba/Rule/Naming/QueryBoolMethods.html">QueryBoolMethods</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/RescuedExceptionsVariableName" data-name="ameba::rule::naming::rescuedexceptionsvariablename">
<a href="../Ameba/Rule/Naming/RescuedExceptionsVariableName.html">RescuedExceptionsVariableName</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/TypeNames" data-name="ameba::rule::naming::typenames">
<a href="../Ameba/Rule/Naming/TypeNames.html">TypeNames</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Naming/VariableNames" data-name="ameba::rule::naming::variablenames">
<a href="../Ameba/Rule/Naming/VariableNames.html">VariableNames</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Performance" data-name="ameba::rule::performance">
<a href="../Ameba/Rule/Performance.html">Performance</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Performance/AnyAfterFilter" data-name="ameba::rule::performance::anyafterfilter">
<a href="../Ameba/Rule/Performance/AnyAfterFilter.html">AnyAfterFilter</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/AnyInsteadOfEmpty" data-name="ameba::rule::performance::anyinsteadofempty">
<a href="../Ameba/Rule/Performance/AnyInsteadOfEmpty.html">AnyInsteadOfEmpty</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/Base" data-name="ameba::rule::performance::base">
<a href="../Ameba/Rule/Performance/Base.html">Base</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/ChainedCallWithNoBang" data-name="ameba::rule::performance::chainedcallwithnobang">
<a href="../Ameba/Rule/Performance/ChainedCallWithNoBang.html">ChainedCallWithNoBang</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/CompactAfterMap" data-name="ameba::rule::performance::compactaftermap">
<a href="../Ameba/Rule/Performance/CompactAfterMap.html">CompactAfterMap</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/ExcessiveAllocations" data-name="ameba::rule::performance::excessiveallocations">
<a href="../Ameba/Rule/Performance/ExcessiveAllocations.html">ExcessiveAllocations</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/FirstLastAfterFilter" data-name="ameba::rule::performance::firstlastafterfilter">
<a href="../Ameba/Rule/Performance/FirstLastAfterFilter.html">FirstLastAfterFilter</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/FlattenAfterMap" data-name="ameba::rule::performance::flattenaftermap">
<a href="../Ameba/Rule/Performance/FlattenAfterMap.html">FlattenAfterMap</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/MapInsteadOfBlock" data-name="ameba::rule::performance::mapinsteadofblock">
<a href="../Ameba/Rule/Performance/MapInsteadOfBlock.html">MapInsteadOfBlock</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/MinMaxAfterMap" data-name="ameba::rule::performance::minmaxaftermap">
<a href="../Ameba/Rule/Performance/MinMaxAfterMap.html">MinMaxAfterMap</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Performance/SizeAfterFilter" data-name="ameba::rule::performance::sizeafterfilter">
<a href="../Ameba/Rule/Performance/SizeAfterFilter.html">SizeAfterFilter</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Rule/Style" data-name="ameba::rule::style">
<a href="../Ameba/Rule/Style.html">Style</a>
<ul>
<li class=" " data-id="ameba/Ameba/Rule/Style/GuardClause" data-name="ameba::rule::style::guardclause">
<a href="../Ameba/Rule/Style/GuardClause.html">GuardClause</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/IsAFilter" data-name="ameba::rule::style::isafilter">
<a href="../Ameba/Rule/Style/IsAFilter.html">IsAFilter</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/IsANil" data-name="ameba::rule::style::isanil">
<a href="../Ameba/Rule/Style/IsANil.html">IsANil</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/LargeNumbers" data-name="ameba::rule::style::largenumbers">
<a href="../Ameba/Rule/Style/LargeNumbers.html">LargeNumbers</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/NegatedConditionsInUnless" data-name="ameba::rule::style::negatedconditionsinunless">
<a href="../Ameba/Rule/Style/NegatedConditionsInUnless.html">NegatedConditionsInUnless</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/ParenthesesAroundCondition" data-name="ameba::rule::style::parenthesesaroundcondition">
<a href="../Ameba/Rule/Style/ParenthesesAroundCondition.html">ParenthesesAroundCondition</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/RedundantBegin" data-name="ameba::rule::style::redundantbegin">
<a href="../Ameba/Rule/Style/RedundantBegin.html">RedundantBegin</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/RedundantNext" data-name="ameba::rule::style::redundantnext">
<a href="../Ameba/Rule/Style/RedundantNext.html">RedundantNext</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/RedundantReturn" data-name="ameba::rule::style::redundantreturn">
<a href="../Ameba/Rule/Style/RedundantReturn.html">RedundantReturn</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/UnlessElse" data-name="ameba::rule::style::unlesselse">
<a href="../Ameba/Rule/Style/UnlessElse.html">UnlessElse</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/VerboseBlock" data-name="ameba::rule::style::verboseblock">
<a href="../Ameba/Rule/Style/VerboseBlock.html">VerboseBlock</a>
</li>
<li class=" " data-id="ameba/Ameba/Rule/Style/WhileTrue" data-name="ameba::rule::style::whiletrue">
<a href="../Ameba/Rule/Style/WhileTrue.html">WhileTrue</a>
</li>
</ul>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Runner" data-name="ameba::runner">
<a href="../Ameba/Runner.html">Runner</a>
<ul>
<li class=" " data-id="ameba/Ameba/Runner/InfiniteCorrectionLoopError" data-name="ameba::runner::infinitecorrectionlooperror">
<a href="../Ameba/Runner/InfiniteCorrectionLoopError.html">InfiniteCorrectionLoopError</a>
</li>
</ul>
</li>
<li class=" " data-id="ameba/Ameba/Severity" data-name="ameba::severity">
<a href="../Ameba/Severity.html">Severity</a>
</li>
<li class=" " data-id="ameba/Ameba/SeverityYamlConverter" data-name="ameba::severityyamlconverter">
<a href="../Ameba/SeverityYamlConverter.html">SeverityYamlConverter</a>
</li>
<li class="parent " data-id="ameba/Ameba/Source" data-name="ameba::source">
<a href="../Ameba/Source.html">Source</a>
<ul>
<li class=" " data-id="ameba/Ameba/Source/Corrector" data-name="ameba::source::corrector">
<a href="../Ameba/Source/Corrector.html">Corrector</a>
</li>
<li class=" " data-id="ameba/Ameba/Source/Rewriter" data-name="ameba::source::rewriter">
<a href="../Ameba/Source/Rewriter.html">Rewriter</a>
</li>
</ul>
</li>
<li class="parent " data-id="ameba/Ameba/Spec" data-name="ameba::spec">
<a href="../Ameba/Spec.html">Spec</a>
<ul>
<li class=" " data-id="ameba/Ameba/Spec/AnnotatedSource" data-name="ameba::spec::annotatedsource">
<a href="../Ameba/Spec/AnnotatedSource.html">AnnotatedSource</a>
</li>
<li class=" " data-id="ameba/Ameba/Spec/BeValid" data-name="ameba::spec::bevalid">
<a href="../Ameba/Spec/BeValid.html">BeValid</a>
</li>
<li class=" " data-id="ameba/Ameba/Spec/BeValidExpectation" data-name="ameba::spec::bevalidexpectation">
<a href="../Ameba/Spec/BeValidExpectation.html">BeValidExpectation</a>
</li>
<li class=" " data-id="ameba/Ameba/Spec/ExpectIssue" data-name="ameba::spec::expectissue">
<a href="../Ameba/Spec/ExpectIssue.html">ExpectIssue</a>
</li>
<li class=" " data-id="ameba/Ameba/Spec/Util" data-name="ameba::spec::util">
<a href="../Ameba/Spec/Util.html">Util</a>
</li>
</ul>
</li>
<li class=" " data-id="ameba/Ameba/Tokenizer" data-name="ameba::tokenizer">
<a href="../Ameba/Tokenizer.html">Tokenizer</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div class="main-content">
<h1 class="type-name">
<span class="kind">module</span> Ameba::<wbr>Reportable
</h1>
<h2>
<a id="overview" class="anchor" href="#overview">
<svg class="octicon-link" aria-hidden="true">
<use href="#octicon-link"/>
</svg>
</a>
Overview
</h2>
<p>Represents a module used to report issues.</p>
<h2>
<a id="included-modules" class="anchor" href="#included-modules">
<svg class="octicon-link" aria-hidden="true">
<use href="#octicon-link"/>
</svg>
</a>
Included Modules
</h2>
<ul class="other-types-list">
<li class="other-type"><a href="../Ameba/AST/Util.html">Ameba::AST::Util</a></li>
</ul>
<h2>
<a id="direct-including-types" class="anchor" href="#direct-including-types">
<svg class="octicon-link" aria-hidden="true">
<use href="#octicon-link"/>
</svg>
</a>
Direct including types
</h2>
<ul class="other-types-list">
<li class="other-type"><a href="../Ameba/Source.html">Ameba::Source</a></li>
</ul>
<h2>
<a id="defined-in" class="anchor" href="#defined-in">
<svg class="octicon-link" aria-hidden="true">
<use href="#octicon-link"/>
</svg>
</a>
Defined in:
</h2>
<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L5" target="_blank">
ameba/reportable.cr
</a>
<br/>
<h2>
<a id="instance-method-summary" class="anchor" href="#instance-method-summary">
<svg class="octicon-link" aria-hidden="true">
<use href="#octicon-link"/>
</svg>
</a>
Instance Method Summary
</h2>
<ul class="list-summary">
<li class="entry-summary">
<a href="#add_issue%28rule%2Clocation%3ACrystal%3A%3ALocation%7CNil%2Cend_location%3ACrystal%3A%3ALocation%7CNil%2Cmessage%3AString%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, location : Crystal::Location | Nil, end_location : Crystal::Location | Nil, message : String, status : Issue::Status | Nil = <span class="n">nil</span>, block : Source::Corrector -> | Nil = <span class="n">nil</span>) : Issue</a>
<div class="summary"><p>Adds a new issue to the list of issues.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Clocation%3ACrystal%3A%3ALocation%7CNil%2Cend_location%3ACrystal%3A%3ALocation%7CNil%2Cmessage%3AString%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, location : Crystal::Location | Nil, end_location : Crystal::Location | Nil, message : String, status : Issue::Status | Nil = <span class="n">nil</span>, &block : Source::Corrector -> ) : Issue</a>
<div class="summary"><p>Adds a new issue to the list of issues.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Ctoken%3ACrystal%3A%3AToken%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, token : Crystal::Token, message, status : Issue::Status | Nil = <span class="n">nil</span>, block : Source::Corrector -> | Nil = <span class="n">nil</span>) : Issue</a>
<div class="summary"><p>Adds a new issue for Crystal <em>token</em>.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, location : Tuple(Int32, Int32), message, status : Issue::Status | Nil = <span class="n">nil</span>, block : Source::Corrector -> | Nil = <span class="n">nil</span>) : Issue</a>
<div class="summary"><p>Adds a new issue for <em>location</em> defined by line and column numbers.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cend_location%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, location : Tuple(Int32, Int32), end_location : Tuple(Int32, Int32), message, status : Issue::Status | Nil = <span class="n">nil</span>, block : Source::Corrector -> | Nil = <span class="n">nil</span>) : Issue</a>
<div class="summary"><p>Adds a new issue for <em>location</em> and <em>end_location</em> defined by line and column numbers.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Cnode%3ACrystal%3A%3AASTNode%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%2C%2A%2Cprefer_name_location%3Dfalse%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, node : Crystal::ASTNode, message, status : Issue::Status | Nil = <span class="n">nil</span>, block : Source::Corrector -> | Nil = <span class="n">nil</span>, *, prefer_name_location = <span class="n">false</span>) : Issue</a>
<div class="summary"><p>Adds a new issue for Crystal AST <em>node</em>.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, location : Tuple(Int32, Int32), message, status : Issue::Status | Nil = <span class="n">nil</span>, &block : Source::Corrector -> ) : Issue</a>
<div class="summary"><p>Adds a new issue for <em>location</em> defined by line and column numbers.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Ctoken%3ACrystal%3A%3AToken%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, token : Crystal::Token, message, status : Issue::Status | Nil = <span class="n">nil</span>, &block : Source::Corrector -> ) : Issue</a>
<div class="summary"><p>Adds a new issue for Crystal <em>token</em>.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cend_location%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, location : Tuple(Int32, Int32), end_location : Tuple(Int32, Int32), message, status : Issue::Status | Nil = <span class="n">nil</span>, &block : Source::Corrector -> ) : Issue</a>
<div class="summary"><p>Adds a new issue for <em>location</em> and <em>end_location</em> defined by line and column numbers.</p></div>
</li>
<li class="entry-summary">
<a href="#add_issue%28rule%2Cnode%3ACrystal%3A%3AASTNode%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%2A%2Cprefer_name_location%3Dfalse%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method" class="signature"><strong>#add_issue</strong>(rule, node : Crystal::ASTNode, message, status : Issue::Status | Nil = <span class="n">nil</span>, *, prefer_name_location = <span class="n">false</span>, &block : Source::Corrector -> ) : Issue</a>
<div class="summary"><p>Adds a new issue for Crystal AST <em>node</em>.</p></div>
</li>
<li class="entry-summary">
<a href="#issues-instance-method" class="signature"><strong>#issues</strong></a>
<div class="summary"><p>List of reported issues.</p></div>
</li>
<li class="entry-summary">
<a href="#valid%3F-instance-method" class="signature"><strong>#valid?</strong></a>
<div class="summary"><p>Returns <code>true</code> if the list of not disabled issues is empty, <code>false</code> otherwise.</p></div>
</li>
</ul>
<div class="methods-inherited">
<h3>Instance methods inherited from module <code><a href="../Ameba/AST/Util.html">Ameba::AST::Util</a></code></h3>
<a href="../Ameba/AST/Util.html#abort%3F%28node%29-instance-method" class="tooltip">
<span>abort?(node)</span>
abort?</a>,
<a href="../Ameba/AST/Util.html#control_exp_code%28node%3ACrystal%3A%3AControlExpression%2Ccode_lines%29-instance-method" class="tooltip">
<span>control_exp_code(node : Crystal::ControlExpression, code_lines)</span>
control_exp_code</a>,
<a href="../Ameba/AST/Util.html#dynamic_literal%3F%28node%29%3ABool-instance-method" class="tooltip">
<span>dynamic_literal?(node) : Bool</span>
dynamic_literal?</a>,
<a href="../Ameba/AST/Util.html#exit%3F%28node%29-instance-method" class="tooltip">
<span>exit?(node)</span>
exit?</a>,
<a href="../Ameba/AST/Util.html#flow_command%3F%28node%2Cin_loop%29-instance-method" class="tooltip">
<span>flow_command?(node, in_loop)</span>
flow_command?</a>,
<a href="../Ameba/AST/Util.html#flow_expression%3F%28node%2Cin_loop%3Dfalse%29-instance-method" class="tooltip">
<span>flow_expression?(node, in_loop = <span class="n">false</span>)</span>
flow_expression?</a>,
<a href="../Ameba/AST/Util.html#literal%3F%28node%29%3ABool-instance-method" class="tooltip">
<span>literal?(node) : Bool</span>
literal?</a>,
<a href="../Ameba/AST/Util.html#loop%3F%28node%29-instance-method" class="tooltip">
<span>loop?(node)</span>
loop?</a>,
<a href="../Ameba/AST/Util.html#name_end_location%28node%29-instance-method" class="tooltip">
<span>name_end_location(node)</span>
name_end_location</a>,
<a href="../Ameba/AST/Util.html#name_location%28node%29-instance-method" class="tooltip">
<span>name_location(node)</span>
name_location</a>,
<a href="../Ameba/AST/Util.html#name_size%28node%29-instance-method" class="tooltip">
<span>name_size(node)</span>
name_size</a>,
<a href="../Ameba/AST/Util.html#node_source%28node%2Ccode_lines%29-instance-method" class="tooltip">
<span>node_source(node, code_lines)</span>
node_source</a>,
<a href="../Ameba/AST/Util.html#path_named%3F%28node%2Cname%29%3ABool-instance-method" class="tooltip">
<span>path_named?(node, name) : Bool</span>
path_named?</a>,
<a href="../Ameba/AST/Util.html#raise%3F%28node%29-instance-method" class="tooltip">
<span>raise?(node)</span>
raise?</a>,
<a href="../Ameba/AST/Util.html#source_between%28loc%2Cend_loc%2Ccode_lines%29%3AString%7CNil-instance-method" class="tooltip">
<span>source_between(loc, end_loc, code_lines) : String | Nil</span>
source_between</a>,
<a href="../Ameba/AST/Util.html#static_literal%3F%28node%29%3ABool-instance-method" class="tooltip">
<span>static_literal?(node) : Bool</span>
static_literal?</a>
</div>
<h2>
<a id="instance-method-detail" class="anchor" href="#instance-method-detail">
<svg class="octicon-link" aria-hidden="true">
<use href="#octicon-link"/>
</svg>
</a>
Instance Method Detail
</h2>
<div class="entry-detail" id="add_issue(rule,location:Crystal::Location|Nil,end_location:Crystal::Location|Nil,message:String,status:Issue::Status|Nil=nil,block:Source::Corrector-&gt;|Nil=nil):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, location : <a href="../Crystal/Location.html">Crystal::Location</a> | Nil, end_location : <a href="../Crystal/Location.html">Crystal::Location</a> | Nil, message : String, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> | Nil = <span class="n">nil</span>) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Clocation%3ACrystal%3A%3ALocation%7CNil%2Cend_location%3ACrystal%3A%3ALocation%7CNil%2Cmessage%3AString%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue to the list of issues.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L12" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,location:Crystal::Location|Nil,end_location:Crystal::Location|Nil,message:String,status:Issue::Status|Nil=nil,&amp;block:Source::Corrector-&gt;):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, location : <a href="../Crystal/Location.html">Crystal::Location</a> | Nil, end_location : <a href="../Crystal/Location.html">Crystal::Location</a> | Nil, message : String, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, &block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> ) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Clocation%3ACrystal%3A%3ALocation%7CNil%2Cend_location%3ACrystal%3A%3ALocation%7CNil%2Cmessage%3AString%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue to the list of issues.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L27" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,token:Crystal::Token,message,status:Issue::Status|Nil=nil,block:Source::Corrector-&gt;|Nil=nil):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, token : Crystal::Token, message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> | Nil = <span class="n">nil</span>) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Ctoken%3ACrystal%3A%3AToken%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for Crystal <em>token</em>.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L53" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,location:Tuple(Int32,Int32),message,status:Issue::Status|Nil=nil,block:Source::Corrector-&gt;|Nil=nil):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, location : Tuple(Int32, Int32), message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> | Nil = <span class="n">nil</span>) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for <em>location</em> defined by line and column numbers.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L63" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,location:Tuple(Int32,Int32),end_location:Tuple(Int32,Int32),message,status:Issue::Status|Nil=nil,block:Source::Corrector-&gt;|Nil=nil):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, location : Tuple(Int32, Int32), end_location : Tuple(Int32, Int32), message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> | Nil = <span class="n">nil</span>) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cend_location%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for <em>location</em> and <em>end_location</em> defined by line and column numbers.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L76" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,node:Crystal::ASTNode,message,status:Issue::Status|Nil=nil,block:Source::Corrector-&gt;|Nil=nil,*,prefer_name_location=false):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, node : Crystal::ASTNode, message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> | Nil = <span class="n">nil</span>, *, prefer_name_location = <span class="n">false</span>) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Cnode%3ACrystal%3A%3AASTNode%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2Cblock%3ASource%3A%3ACorrector-%3E%7CNil%3Dnil%2C%2A%2Cprefer_name_location%3Dfalse%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for Crystal AST <em>node</em>.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L37" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,location:Tuple(Int32,Int32),message,status:Issue::Status|Nil=nil,&amp;block:Source::Corrector-&gt;):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, location : Tuple(Int32, Int32), message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, &block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> ) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for <em>location</em> defined by line and column numbers.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L71" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,token:Crystal::Token,message,status:Issue::Status|Nil=nil,&amp;block:Source::Corrector-&gt;):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, token : Crystal::Token, message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, &block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> ) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Ctoken%3ACrystal%3A%3AToken%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for Crystal <em>token</em>.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L58" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,location:Tuple(Int32,Int32),end_location:Tuple(Int32,Int32),message,status:Issue::Status|Nil=nil,&amp;block:Source::Corrector-&gt;):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, location : Tuple(Int32, Int32), end_location : Tuple(Int32, Int32), message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, &block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> ) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Clocation%3ATuple%28Int32%2CInt32%29%2Cend_location%3ATuple%28Int32%2CInt32%29%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for <em>location</em> and <em>end_location</em> defined by line and column numbers.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L91" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="add_issue(rule,node:Crystal::ASTNode,message,status:Issue::Status|Nil=nil,*,prefer_name_location=false,&amp;block:Source::Corrector-&gt;):Issue-instance-method">
<div class="signature">
def <strong>add_issue</strong>(rule, node : Crystal::ASTNode, message, status : <a href="../Ameba/Issue/Status.html">Issue::Status</a> | Nil = <span class="n">nil</span>, *, prefer_name_location = <span class="n">false</span>, &block : <a href="../Ameba/Source/Corrector.html">Source::Corrector</a> -> ) : <a href="../Ameba/Issue.html">Issue</a>
<a class="method-permalink" href="#add_issue%28rule%2Cnode%3ACrystal%3A%3AASTNode%2Cmessage%2Cstatus%3AIssue%3A%3AStatus%7CNil%3Dnil%2C%2A%2Cprefer_name_location%3Dfalse%2C%26block%3ASource%3A%3ACorrector-%3E%29%3AIssue-instance-method">#</a>
</div>
<div class="doc">
<p>Adds a new issue for Crystal AST <em>node</em>.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L48" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="issues-instance-method">
<div class="signature">
def <strong>issues</strong>
<a class="method-permalink" href="#issues-instance-method">#</a>
</div>
<div class="doc">
<p>List of reported issues.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L9" target="_blank">View source</a>]
</div>
</div>
<div class="entry-detail" id="valid?-instance-method">
<div class="signature">
def <strong>valid?</strong>
<a class="method-permalink" href="#valid%3F-instance-method">#</a>
</div>
<div class="doc">
<p>Returns <code>true</code> if the list of not disabled issues is empty, <code>false</code> otherwise.</p>
</div>
<br/>
<div>
[<a href="https://github.com/crystal-ameba/ameba/blob/e6a5fa9/src/ameba/reportable.cr#L101" target="_blank">View source</a>]
</div>
</div>
</div>
</body>
</html>