2 instantiations of SwitchExpression
System.Core (2)
Microsoft\Scripting\Ast\SwitchExpression.cs (1)
282return new SwitchExpression(resultType, switchValue, defaultBody, comparison, caseList);
Microsoft\Scripting\Compiler\StackSpiller.cs (1)
837expr = new SwitchExpression(node.Type, switchValue.Node, defaultBody.Node, node.Comparison, cases);
44 references to SwitchExpression
System.Core (44)
Microsoft\Scripting\Ast\DebugViewWriter.cs (1)
1017protected internal override Expression VisitSwitch(SwitchExpression node) {
Microsoft\Scripting\Ast\Expression.DebuggerProxy.cs (2)
387private readonly SwitchExpression _node; 389public SwitchExpressionProxy(SwitchExpression node) {
Microsoft\Scripting\Ast\ExpressionStringBuilder.cs (1)
739protected internal override Expression VisitSwitch(SwitchExpression node) {
Microsoft\Scripting\Ast\ExpressionVisitor.cs (5)
475/// Visits the children of the <see cref="SwitchExpression" />. 480protected internal virtual Expression VisitSwitch(SwitchExpression node) { 657private static SwitchExpression ValidateSwitch(SwitchExpression before, SwitchExpression after) {
Microsoft\Scripting\Ast\SwitchCase.cs (4)
28/// Represents one case of a <see cref="SwitchExpression"/>. 43/// Gets the values of this case. This case is selected for execution when the <see cref="SwitchExpression.SwitchValue"/> matches any of these values. 82/// Creates a <see cref="T:SwitchCase">SwitchCase</see> for use in a <see cref="SwitchExpression"/>. 92/// Creates a <see cref="T:SwitchCase">SwitchCase</see> for use in a <see cref="SwitchExpression"/>.
Microsoft\Scripting\Ast\SwitchExpression.cs (19)
124public SwitchExpression Update(Expression switchValue, IEnumerable<SwitchCase> cases, Expression defaultBody) { 134/// Creates a <see cref="SwitchExpression"/>. 138/// <returns>The created <see cref="SwitchExpression"/>.</returns> 139public static SwitchExpression Switch(Expression switchValue, params SwitchCase[] cases) { 144/// Creates a <see cref="SwitchExpression"/>. 149/// <returns>The created <see cref="SwitchExpression"/>.</returns> 150public static SwitchExpression Switch(Expression switchValue, Expression defaultBody, params SwitchCase[] cases) { 155/// Creates a <see cref="SwitchExpression"/>. 161/// <returns>The created <see cref="SwitchExpression"/>.</returns> 162public static SwitchExpression Switch(Expression switchValue, Expression defaultBody, MethodInfo comparison, params SwitchCase[] cases) { 167/// Creates a <see cref="SwitchExpression"/>. 174/// <returns>The created <see cref="SwitchExpression"/>.</returns> 175public static SwitchExpression Switch(Type type, Expression switchValue, Expression defaultBody, MethodInfo comparison, params SwitchCase[] cases) { 180/// Creates a <see cref="SwitchExpression"/>. 186/// <returns>The created <see cref="SwitchExpression"/>.</returns> 187public static SwitchExpression Switch(Expression switchValue, Expression defaultBody, MethodInfo comparison, IEnumerable<SwitchCase> cases) { 192/// Creates a <see cref="SwitchExpression"/>. 199/// <returns>The created <see cref="SwitchExpression"/>.</returns> 200public static SwitchExpression Switch(Type type, Expression switchValue, Expression defaultBody, MethodInfo comparison, IEnumerable<SwitchCase> cases) {
Microsoft\Scripting\Compiler\LambdaCompiler.ControlFlow.cs (2)
185var @switch = (SwitchExpression)node;
Microsoft\Scripting\Compiler\LambdaCompiler.Statements.cs (8)
160SwitchExpression node = (SwitchExpression)expr; 211private static Type GetTestValueType(SwitchExpression node) { 241internal readonly SwitchExpression Node; 248internal SwitchInfo(SwitchExpression node, LocalBuilder value, Label @default) { 319private bool TryEmitSwitchInstruction(SwitchExpression node, CompilationFlags flags) { 430private void EmitSwitchCases(SwitchExpression node, Label[] labels, bool[] isGoto, Label @default, Label end, CompilationFlags flags) { 556private bool TryEmitHashtableSwitch(SwitchExpression node, CompilationFlags flags) {
Microsoft\Scripting\Compiler\StackSpiller.cs (2)
779SwitchExpression node = (SwitchExpression)expr;