Import path
import codeql.ruby.ast.Control
Classes
CaseExpr | A case statement. There are three forms of case statements:
|
ConditionalExpr | A conditional expression: if /unless (including expression-modifier variants), and ternary-if (?: ) expressions.
|
ConditionalLoop | A loop using a condition expression. That is, a while or until loop, or their expression-modifier variants.
|
ControlExpr | A control expression that can be any of the following: - case - if /unless (including expression-modifier variants) - ternary-if (?: ) - while /until (including expression-modifier variants) - for
|
ForExpr | A for loop. rb for val in 1..n sum += val end
|
IfExpr | An if or elsif expression. rb if x a += 1 elsif y a += 2 end
|
IfModifierExpr | An expression modified using if . rb foo if bar
|
InClause | An in clause of a case expression. rb case foo in [ a ] then a end
|
Loop | A loop. That is, a for loop, a while or until loop, or their expression-modifier variants.
|
MatchPattern | A one-line pattern match using the => operator. For example: rb foo => Point{ x:, y: }
|
TernaryIfExpr | A conditional expression using the ternary (?: ) operator. rb (a > b) ? a : b
|
TestPattern | A one-line pattern match using the in operator. For example: rb foo in Point{ x:, y: }
|
UnlessExpr | An unless expression. rb unless x == 0 y /= x end
|
UnlessModifierExpr | An expression modified using unless . rb y /= x unless x == 0
|
UntilExpr | An until loop. rb until a >= b p a a += 1 end
|
UntilModifierExpr | An expression looped using the until modifier. rb foo until bar
|
WhenClause | A when branch of a case expression. rb case when a > b then x end
|
WhileExpr | A while loop. rb while a < b p a a += 2 end
|
WhileModifierExpr | An expression looped using the while modifier. rb foo while bar
|