1 instantiation of LabelTarget
System.Linq.Expressions (1)
System\Linq\Expressions\LabelTarget.cs (1)
82
return new
LabelTarget
(type, name);
128 references to LabelTarget
Microsoft.AspNetCore.Components.Endpoints (2)
FormMapping\Factories\ComplexType\ComplexTypeExpressionConverterFactoryOfT.cs (2)
50
var
end = Expression.Label("done");
549
private static ConditionalExpression CreatePrefixCheckForRecursiveTypes(ParameterExpression readerParam, ParameterExpression foundValueParam, ParameterExpression succeeded,
LabelTarget
end)
Microsoft.AspNetCore.Http.Extensions (3)
RequestDelegateFactory.cs (1)
1795
var
loopExit = Expression.Label();
src\Components\Endpoints\src\FormMapping\Factories\ComplexType\ComplexTypeExpressionConverterFactoryOfT.cs (2)
50
var
end = Expression.Label("done");
549
private static ConditionalExpression CreatePrefixCheckForRecursiveTypes(ParameterExpression readerParam, ParameterExpression foundValueParam, ParameterExpression succeeded,
LabelTarget
end)
netstandard (1)
netstandard.cs (1)
1007
[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Linq.Expressions.
LabelTarget
))]
System.Core (1)
System.Core.cs (1)
145
[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(System.Linq.Expressions.
LabelTarget
))]
System.Linq.Expressions (113)
System\Dynamic\DynamicMetaObjectBinder.cs (1)
50
public sealed override Expression Bind(object[] args, ReadOnlyCollection<ParameterExpression> parameters,
LabelTarget
returnLabel)
System\Linq\Expressions\Compiler\LabelInfo.cs (7)
18
private readonly
LabelTarget
? _node;
60
internal LabelInfo(ILGenerator il,
LabelTarget
? node, bool canReturn)
329
private Dictionary<
LabelTarget
, LabelInfo>? _labels; // lazily allocated, we typically use this only once every 6th-7th block
359
internal bool ContainsTarget(
LabelTarget
target)
369
internal bool TryGetLabelInfo(
LabelTarget
target, out LabelInfo? info)
380
internal void AddLabelInfo(
LabelTarget
target, LabelInfo info)
384
_labels ??= new Dictionary<
LabelTarget
, LabelInfo>();
System\Linq\Expressions\Compiler\LambdaCompiler.ControlFlow.cs (5)
13
private LabelInfo EnsureLabel(
LabelTarget
node)
22
private LabelInfo ReferenceLabel(
LabelTarget
node)
29
private LabelInfo DefineLabel(
LabelTarget
? node)
162
LabelTarget
label = ((LabelExpression)node).Target;
257
LabelTarget
label = ((LabelExpression)expression).Target;
System\Linq\Expressions\Compiler\LambdaCompiler.cs (2)
49
private readonly Dictionary<
LabelTarget
, LabelInfo> _labelInfo = new Dictionary<
LabelTarget
, LabelInfo>();
System\Linq\Expressions\DebugViewWriter.cs (4)
52
private Dictionary<
LabelTarget
, int>? _labelIds;
109
private int GetLabelTargetId(
LabelTarget
target)
1150
private void DumpLabel(
LabelTarget
target)
1155
private string GetLabelTargetName(
LabelTarget
target)
System\Linq\Expressions\Expression.DebuggerProxy.cs (4)
157
public
LabelTarget
Target => _node.Target;
213
public
LabelTarget
Target => _node.Target;
267
public
LabelTarget
? BreakLabel => _node.BreakLabel;
269
public
LabelTarget
? ContinueLabel => _node.ContinueLabel;
System\Linq\Expressions\ExpressionStringBuilder.cs (2)
33
private int GetLabelId(
LabelTarget
label) => GetId(label);
798
private void DumpLabel(
LabelTarget
target)
System\Linq\Expressions\ExpressionVisitor.cs (3)
315
/// Visits the <see cref="
LabelTarget
"/>.
321
protected virtual
LabelTarget
? VisitLabelTarget(
LabelTarget
? node)
System\Linq\Expressions\GotoExpression.cs (34)
38
internal GotoExpression(GotoExpressionKind kind,
LabelTarget
target, Expression? value, Type type)
67
public
LabelTarget
Target { get; }
90
public GotoExpression Update(
LabelTarget
target, Expression? value)
105
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
110
public static GotoExpression Break(
LabelTarget
target)
118
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
125
public static GotoExpression Break(
LabelTarget
target, Expression? value)
133
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
140
public static GotoExpression Break(
LabelTarget
target, Type type)
149
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
158
public static GotoExpression Break(
LabelTarget
target, Expression? value, Type type)
166
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
172
public static GotoExpression Continue(
LabelTarget
target)
180
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
188
public static GotoExpression Continue(
LabelTarget
target, Type type)
196
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
202
public static GotoExpression Return(
LabelTarget
target)
210
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
218
public static GotoExpression Return(
LabelTarget
target, Type type)
226
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
233
public static GotoExpression Return(
LabelTarget
target, Expression? value)
242
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
251
public static GotoExpression Return(
LabelTarget
target, Expression? value, Type type)
259
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
265
public static GotoExpression Goto(
LabelTarget
target)
273
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
281
public static GotoExpression Goto(
LabelTarget
target, Type type)
289
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
296
public static GotoExpression Goto(
LabelTarget
target, Expression? value)
305
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
314
public static GotoExpression Goto(
LabelTarget
target, Expression? value, Type type)
324
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
333
public static GotoExpression MakeGoto(GotoExpressionKind kind,
LabelTarget
target, Expression? value, Type type)
339
private static void ValidateGoto(
LabelTarget
target, ref Expression? value, string targetParameter, string valueParameter, Type? type)
System\Linq\Expressions\Interpreter\LabelInfo.cs (7)
17
private readonly
LabelTarget
? _node;
36
internal LabelInfo(
LabelTarget
? node)
277
private HybridReferenceDictionary<
LabelTarget
, LabelInfo>? _labels; // lazily allocated, we typically use this only once every 6th-7th block
306
internal bool ContainsTarget(
LabelTarget
target)
316
internal bool TryGetLabelInfo(
LabelTarget
target, [NotNullWhen(true)] out LabelInfo? info)
327
internal void AddLabelInfo(
LabelTarget
target, LabelInfo info)
331
_labels ??= new HybridReferenceDictionary<
LabelTarget
, LabelInfo>();
System\Linq\Expressions\Interpreter\LightCompiler.cs (8)
285
private readonly HybridReferenceDictionary<
LabelTarget
, LabelInfo> _treeLabels = new HybridReferenceDictionary<
LabelTarget
, LabelInfo>();
337
foreach (KeyValuePair<
LabelTarget
, LabelInfo> kvp in _treeLabels)
1603
LabelTarget
doneLabel = Expression.Label(node.Type, "done");
1791
private LabelInfo EnsureLabel(
LabelTarget
node)
1800
private LabelInfo ReferenceLabel(
LabelTarget
node)
1807
private LabelInfo DefineLabel(
LabelTarget
? node)
1841
LabelTarget
label = ((LabelExpression)node).Target;
System\Linq\Expressions\LabelExpression.cs (8)
17
internal LabelExpression(
LabelTarget
label, Expression? defaultValue)
36
/// The <see cref="
LabelTarget
"/> which this label is associated with.
38
public
LabelTarget
Target { get; }
62
public LabelExpression Update(
LabelTarget
target, Expression? defaultValue)
77
/// <param name="target">The <see cref="
LabelTarget
"/> which this <see cref="LabelExpression"/> will be associated with.</param>
79
public static LabelExpression Label(
LabelTarget
target)
87
/// <param name="target">The <see cref="
LabelTarget
"/> which this <see cref="LabelExpression"/> will be associated with.</param>
90
public static LabelExpression Label(
LabelTarget
target, Expression? defaultValue)
System\Linq\Expressions\LabelTarget.cs (12)
44
/// Creates a <see cref="
LabelTarget
"/> representing a label with void type and no name.
46
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
47
public static
LabelTarget
Label()
53
/// Creates a <see cref="
LabelTarget
"/> representing a label with void type and the given name.
56
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
57
public static
LabelTarget
Label(string? name)
63
/// Creates a <see cref="
LabelTarget
"/> representing a label with the given type.
66
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
67
public static
LabelTarget
Label(Type type)
73
/// Creates a <see cref="
LabelTarget
"/> representing a label with the given type and name.
77
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
78
public static
LabelTarget
Label(Type type, string? name)
System\Linq\Expressions\LoopExpression.cs (11)
15
internal LoopExpression(Expression body,
LabelTarget
? @break,
LabelTarget
? @continue)
41
/// Gets the <see cref="
LabelTarget
"/> that is used by the loop body as a break statement target.
43
public
LabelTarget
? BreakLabel { get; }
46
/// Gets the <see cref="
LabelTarget
"/> that is used by the loop body as a continue statement target.
48
public
LabelTarget
? ContinueLabel { get; }
67
public LoopExpression Update(
LabelTarget
? breakLabel,
LabelTarget
? continueLabel, Expression body)
95
public static LoopExpression Loop(Expression body,
LabelTarget
? @break)
107
public static LoopExpression Loop(Expression body,
LabelTarget
? @break,
LabelTarget
? @continue)
System\Runtime\CompilerServices\CallSite.cs (2)
369
LabelTarget
@return = Expression.Label(returnType);
454
LabelTarget
@break = Expression.Label();
System\Runtime\CompilerServices\CallSiteBinder.cs (3)
39
public static
LabelTarget
UpdateLabel { get; } = Expression.Label("CallSiteBinder.UpdateLabel");
48
internal readonly
LabelTarget
ReturnLabel;
88
public abstract Expression Bind(object[] args, ReadOnlyCollection<ParameterExpression> parameters,
LabelTarget
returnLabel);
System.Linq.Queryable (8)
System\Linq\EnumerableRewriter.cs (8)
20
private Dictionary<
LabelTarget
,
LabelTarget
>? _targetCache;
412
LabelTarget
target = VisitLabelTarget(node.Target);
417
protected override
LabelTarget
VisitLabelTarget(
LabelTarget
? node)
419
LabelTarget
? newTarget;
422
_targetCache = new Dictionary<
LabelTarget
,
LabelTarget
>();