class Ameba::Rule::Documentation::DocumentationAdmonition
   
  
  Overview
A rule that reports documentation admonitions.
Optionally, these can fail at an appropriate time.
def get_user(id)
  # TODO(2024-04-24) Fix this hack when the database migration is complete
  if id < 1_000_000
    v1_api_call(id)
  else
    v2_api_call(id)
  end
endTODO comments are used to remind yourself of source code related things.
The premise here is that TODO should be dealt with in the near future
and are therefore reported by Ameba.
FIXME comments are used to indicate places where source code needs fixing.
The premise here is that FIXME should indeed be fixed as soon as possible
and are therefore reported by Ameba.
YAML configuration example:
Documentation/DocumentationAdmonition:
  Enabled: true
  Admonitions: [TODO, FIXME, BUG]
  Timezone: UTCIncluded Modules
- YAML::Serializable
- YAML::Serializable::Strict
Defined in:
ameba/rule/documentation/documentation_admonition.crConstant Summary
- 
        MSG = "Found a %s admonition in a comment"
- 
        MSG_ERR = "%s admonition error: %s"
- 
        MSG_LATE = "Found a %s admonition in a comment (%s)"
Constructors
- .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
- 
        .new(config = nil)
        
          A rule that reports documentation admonitions. 
Class Method Summary
- 
        .parsed_doc : String | Nil
        
          Returns documentation for this rule, if there is any. 
Instance Method Summary
- #admonitions : Array(String)
- #admonitions=(admonitions : Array(String))
- #description : String
- #description=(description : String)
- #enabled=(enabled : Bool)
- #enabled? : Bool
- #excluded : Array(String) | Nil
- #excluded=(excluded : Array(String) | Nil)
- #severity : Ameba::Severity
- #severity=(severity : Ameba::Severity)
- #test(source)
- #timezone : String
- #timezone=(timezone : String)
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
  
  
    
      default_severity : Ameba::Severity
    default_severity
    
  
    
  Macros inherited from class Ameba::Rule::Base
  
  
    
      issue_for(*args, **kwargs, &block)
    issue_for
    
  
  
    
    
    
    
  Macros inherited from module Ameba::Config::RuleConfig
  
  
    
      properties(&block)
    properties
    
  
  
    
    
    
    
  
    
    
    
    
  
Constructor Detail
A rule that reports documentation admonitions.
Optionally, these can fail at an appropriate time.
def get_user(id)
  # TODO(2024-04-24) Fix this hack when the database migration is complete
  if id < 1_000_000
    v1_api_call(id)
  else
    v2_api_call(id)
  end
endTODO comments are used to remind yourself of source code related things.
The premise here is that TODO should be dealt with in the near future
and are therefore reported by Ameba.
FIXME comments are used to indicate places where source code needs fixing.
The premise here is that FIXME should indeed be fixed as soon as possible
and are therefore reported by Ameba.
YAML configuration example:
Documentation/DocumentationAdmonition:
  Enabled: true
  Admonitions: [TODO, FIXME, BUG]
  Timezone: UTCClass Method Detail
Returns documentation for this rule, if there is any.
module Ameba
  # This is a test rule.
  # Does nothing.
  class MyRule < Ameba::Rule::Base
    def test(source)
    end
  end
end
MyRule.parsed_doc # => "This is a test rule.\nDoes nothing."