Доработаны правила
This commit is contained in:
@@ -17,14 +17,20 @@ public class ConditionalBeginEndRule : BaseRuleVisitor, IRule
|
||||
|
||||
public override void Visit(IfStatement node)
|
||||
{
|
||||
if (node.ThenStatement is not BeginEndBlockStatement)
|
||||
if (node.ThenStatement != null && node.ThenStatement is not BeginEndBlockStatement)
|
||||
{
|
||||
AddViolation(node);
|
||||
if (node.ThenStatement.StartLine != node.StartLine || node.ScriptTokenStream.Where(t => t.Offset <= node.ThenStatement.StartOffset + node.ThenStatement.FragmentLength).Max(t => t.Line) != node.StartLine)
|
||||
{
|
||||
AddViolation(node.ThenStatement);
|
||||
}
|
||||
}
|
||||
|
||||
if (node.ElseStatement != null && node.ElseStatement is not BeginEndBlockStatement && node.ElseStatement is not IfStatement)
|
||||
{
|
||||
AddViolation(Name, Text, GetLineNumber(node.ElseStatement), GetColumnNumber(node.ElseStatement));
|
||||
if (node.ElseStatement.StartLine != node.StartLine || node.ScriptTokenStream.Where(t => t.Offset <= node.ElseStatement.StartOffset + node.ElseStatement.FragmentLength).Max(t => t.Line) != node.StartLine)
|
||||
{
|
||||
AddViolation(node.ElseStatement);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user