Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultCaseLastRule = rule.Rule{ Name: "default-case-last", Run: func(ctx rule.RuleContext, options any) rule.RuleListeners { return rule.RuleListeners{ ast.KindSwitchStatement: func(node *ast.Node) { switchStmt := node.AsSwitchStatement() if switchStmt == nil { return } caseBlockNode := switchStmt.CaseBlock if caseBlockNode == nil { return } caseBlock := caseBlockNode.AsCaseBlock() if caseBlock == nil || caseBlock.Clauses == nil { return } clauseNodes := caseBlock.Clauses.Nodes if len(clauseNodes) == 0 { return } for i, clause := range clauseNodes { if clause.Kind == ast.KindDefaultClause { if i != len(clauseNodes)-1 { ctx.ReportNode(clause, rule.RuleMessage{ Id: "notLast", Description: "Default clause should be the last clause.", }) } return } } }, } }, }
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.