1 instantiation of LabelTarget
System.Core (1)
Microsoft\Scripting\Ast\LabelTarget.cs (1)
99
return new
LabelTarget
(type, name);
104 references to LabelTarget
System.Core (104)
Microsoft\Scripting\Actions\CallSite.cs (2)
362
var
@return = Expression.Label(invoke.GetReturnType());
477
var
@break = Expression.Label();
Microsoft\Scripting\Actions\CallSiteBinder.cs (4)
38
private static readonly
LabelTarget
_updateLabel = Expression.Label("CallSiteBinder.UpdateLabel");
57
public static
LabelTarget
UpdateLabel {
65
internal readonly
LabelTarget
ReturnLabel;
101
public abstract Expression Bind(object[] args, ReadOnlyCollection<ParameterExpression> parameters,
LabelTarget
returnLabel);
Microsoft\Scripting\Actions\DynamicMetaObjectBinder.cs (1)
73
public sealed override Expression Bind(object[] args, ReadOnlyCollection<ParameterExpression> parameters,
LabelTarget
returnLabel) {
Microsoft\Scripting\Ast\DebugViewWriter.cs (4)
70
private Dictionary<
LabelTarget
, int> _labelIds;
127
private int GetLabelTargetId(
LabelTarget
target) {
1112
private void DumpLabel(
LabelTarget
target) {
1116
private string GetLabelTargetName(
LabelTarget
target) {
Microsoft\Scripting\Ast\Expression.DebuggerProxy.cs (4)
170
public
LabelTarget
Target { get { return _node.Target; } }
217
public
LabelTarget
Target { get { return _node.Target; } }
262
public
LabelTarget
BreakLabel { get { return _node.BreakLabel; } }
264
public
LabelTarget
ContinueLabel { get { return _node.ContinueLabel; } }
Microsoft\Scripting\Ast\ExpressionStringBuilder.cs (3)
47
private void AddLabel(
LabelTarget
label) {
58
private int GetLabelId(
LabelTarget
label) {
798
private void DumpLabel(
LabelTarget
target) {
Microsoft\Scripting\Ast\ExpressionVisitor.cs (3)
341
/// Visits the <see cref="
LabelTarget
" />.
346
protected virtual
LabelTarget
VisitLabelTarget(
LabelTarget
node) {
Microsoft\Scripting\Ast\GotoExpression.cs (35)
60
private readonly
LabelTarget
_target;
63
internal GotoExpression(GotoExpressionKind kind,
LabelTarget
target, Expression value, Type type) {
97
public
LabelTarget
Target {
123
public GotoExpression Update(
LabelTarget
target, Expression value) {
135
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
140
public static GotoExpression Break(
LabelTarget
target) {
147
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
154
public static GotoExpression Break(
LabelTarget
target, Expression value) {
161
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
168
public static GotoExpression Break(
LabelTarget
target, Type type) {
176
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
185
public static GotoExpression Break(
LabelTarget
target, Expression value, Type type) {
192
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
198
public static GotoExpression Continue(
LabelTarget
target) {
205
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
213
public static GotoExpression Continue(
LabelTarget
target, Type type) {
220
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
226
public static GotoExpression Return(
LabelTarget
target) {
233
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
241
public static GotoExpression Return(
LabelTarget
target, Type type) {
248
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
255
public static GotoExpression Return(
LabelTarget
target, Expression value) {
263
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
272
public static GotoExpression Return(
LabelTarget
target, Expression value, Type type) {
279
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
285
public static GotoExpression Goto(
LabelTarget
target) {
292
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
300
public static GotoExpression Goto(
LabelTarget
target, Type type) {
307
/// <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) {
322
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
331
public static GotoExpression Goto(
LabelTarget
target, Expression value, Type type) {
340
/// <param name="target">The <see cref="
LabelTarget
"/> that the <see cref="GotoExpression"/> will jump to.</param>
349
public static GotoExpression MakeGoto(GotoExpressionKind kind,
LabelTarget
target, Expression value, Type type) {
354
private static void ValidateGoto(
LabelTarget
target, ref Expression value, string targetParameter, string valueParameter) {
Microsoft\Scripting\Ast\LabelExpression.cs (9)
35
private readonly
LabelTarget
_target;
37
internal LabelExpression(
LabelTarget
label, Expression defaultValue) {
59
/// The <see cref="
LabelTarget
"/> which this label is associated with.
61
public
LabelTarget
Target {
88
public LabelExpression Update(
LabelTarget
target, Expression defaultValue) {
100
/// <param name="target">The <see cref="
LabelTarget
"/> which this <see cref="LabelExpression"/> will be associated with.</param>
102
public static LabelExpression Label(
LabelTarget
target) {
109
/// <param name="target">The <see cref="
LabelTarget
"/> which this <see cref="LabelExpression"/> will be associated with.</param>
112
public static LabelExpression Label(
LabelTarget
target, Expression defaultValue) {
Microsoft\Scripting\Ast\LabelTarget.cs (12)
65
/// Creates a <see cref="
LabelTarget
"/> representing a label with void type and no name.
67
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
68
public static
LabelTarget
Label() {
73
/// Creates a <see cref="
LabelTarget
"/> representing a label with void type and the given name.
76
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
77
public static
LabelTarget
Label(string name) {
82
/// Creates a <see cref="
LabelTarget
"/> representing a label with the given type.
85
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
86
public static
LabelTarget
Label(Type type) {
91
/// Creates a <see cref="
LabelTarget
"/> representing a label with the given type and name.
95
/// <returns>The new <see cref="
LabelTarget
"/>.</returns>
96
public static
LabelTarget
Label(Type type, string name) {
Microsoft\Scripting\Ast\LoopExpression.cs (13)
37
private readonly
LabelTarget
_break;
38
private readonly
LabelTarget
_continue;
40
internal LoopExpression(Expression body,
LabelTarget
@break,
LabelTarget
@continue) {
71
/// Gets the <see cref="
LabelTarget
"/> that is used by the loop body as a break statement target.
73
public
LabelTarget
BreakLabel {
78
/// Gets the <see cref="
LabelTarget
"/> that is used by the loop body as a continue statement target.
80
public
LabelTarget
ContinueLabel {
100
public LoopExpression Update(
LabelTarget
breakLabel,
LabelTarget
continueLabel, Expression body) {
124
public static LoopExpression Loop(Expression body,
LabelTarget
@break) {
135
public static LoopExpression Loop(Expression body,
LabelTarget
@break,
LabelTarget
@continue) {
Microsoft\Scripting\Compiler\LabelInfo.cs (7)
41
private readonly
LabelTarget
_node;
81
internal LabelInfo(ILGenerator il,
LabelTarget
node, bool canReturn) {
308
private Dictionary<
LabelTarget
, LabelInfo> Labels; // lazily allocated, we typically use this only once every 6th-7th block
334
internal bool ContainsTarget(
LabelTarget
target) {
342
internal bool TryGetLabelInfo(
LabelTarget
target, out LabelInfo info) {
351
internal void AddLabelInfo(
LabelTarget
target, LabelInfo info) {
355
Labels = new Dictionary<
LabelTarget
, LabelInfo>();
Microsoft\Scripting\Compiler\LambdaCompiler.ControlFlow.cs (5)
29
private LabelInfo EnsureLabel(
LabelTarget
node) {
37
private LabelInfo ReferenceLabel(
LabelTarget
node) {
43
private LabelInfo DefineLabel(
LabelTarget
node) {
156
var
label = ((LabelExpression)node).Target;
238
var
label = ((LabelExpression)expression).Target;
Microsoft\Scripting\Compiler\LambdaCompiler.cs (2)
58
private readonly Dictionary<
LabelTarget
, LabelInfo> _labelInfo = new Dictionary<
LabelTarget
, LabelInfo>();