github.com/terraform-linters/tflint-plugin-sdk@v0.22.0/tflint/rule.go (about)

     1  package tflint
     2  
     3  // DefaultRule implements optional fields in the rule interface.
     4  // You can create a rule by embedding this rule.
     5  type DefaultRule struct{}
     6  
     7  // Link allows you to add a reference link to the rule.
     8  // The default is empty.
     9  func (r *DefaultRule) Link() string {
    10  	return ""
    11  }
    12  
    13  // Metadata allows you to set any metadata to the rule.
    14  // This value is never referenced by the SDK and can be used for your custom ruleset.
    15  func (r *DefaultRule) Metadata() interface{} {
    16  	return nil
    17  }
    18  
    19  func (r *DefaultRule) mustEmbedDefaultRule() {}
    20  
    21  var _ Rule = &embedDefaultRule{}
    22  
    23  type embedDefaultRule struct {
    24  	DefaultRule
    25  }
    26  
    27  func (r *embedDefaultRule) Name() string              { return "" }
    28  func (r *embedDefaultRule) Enabled() bool             { return true }
    29  func (r *embedDefaultRule) Severity() Severity        { return ERROR }
    30  func (r *embedDefaultRule) Check(runner Runner) error { return nil }