13 instantiations of VariableStyle
Microsoft.CodeAnalysis.Features (13)
ExtractMethod\VariableStyle.cs (13)
15
new
VariableStyle
() { ParameterStyle = ParameterStyle.None, ReturnStyle = ReturnStyle.None };
18
new
VariableStyle
() { ParameterStyle = ParameterStyle.InputOnly, ReturnStyle = ReturnStyle.None };
21
new
VariableStyle
() { ParameterStyle = ParameterStyle.Delete, ReturnStyle = ReturnStyle.None };
24
new
VariableStyle
() { ParameterStyle = ParameterStyle.MoveOut, ReturnStyle = ReturnStyle.None };
27
new
VariableStyle
() { ParameterStyle = ParameterStyle.SplitOut, ReturnStyle = ReturnStyle.None };
30
new
VariableStyle
() { ParameterStyle = ParameterStyle.MoveIn, ReturnStyle = ReturnStyle.None };
33
new
VariableStyle
() { ParameterStyle = ParameterStyle.SplitIn, ReturnStyle = ReturnStyle.None };
36
new
VariableStyle
() { ParameterStyle = ParameterStyle.MoveOut, ReturnStyle = ReturnStyle.Initialization };
39
new
VariableStyle
() { ParameterStyle = ParameterStyle.Ref, ReturnStyle = ReturnStyle.AssignmentWithInput };
42
new
VariableStyle
() { ParameterStyle = ParameterStyle.Ref, ReturnStyle = ReturnStyle.None };
45
new
VariableStyle
() { ParameterStyle = ParameterStyle.Out, ReturnStyle = ReturnStyle.AssignmentWithNoInput };
48
new
VariableStyle
() { ParameterStyle = ParameterStyle.Out, ReturnStyle = ReturnStyle.AssignmentWithInput };
51
new
VariableStyle
() { ParameterStyle = ParameterStyle.OutWithMoveOut, ReturnStyle = ReturnStyle.Initialization };
111 references to VariableStyle
Microsoft.CodeAnalysis.CSharp.Features (1)
ExtractMethod\CSharpMethodExtractor.Analyzer.cs (1)
40
VariableStyle
style,
Microsoft.CodeAnalysis.Features (109)
ExtractMethod\ExtractMethodMatrix.cs (77)
15
private static readonly Dictionary<Key,
VariableStyle
> s_matrix;
19
s_matrix = new Dictionary<Key,
VariableStyle
>();
34
out
VariableStyle
variableStyle)
40
variableStyle =
VariableStyle
.Out;
92
variableStyle =
VariableStyle
.InputOnly;
107
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.InputOnly);
108
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.InputOnly);
109
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.InputOnly);
110
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.InputOnly);
111
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.MoveIn);
112
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.InputOnly);
113
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.SplitIn);
114
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.InputOnly);
115
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: false, readOutside: false, writtenOutside: true),
VariableStyle
.MoveOut);
116
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: false, readOutside: true, writtenOutside: true),
VariableStyle
.MoveOut);
117
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.None);
118
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.SplitOut);
119
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.SplitOut);
120
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: false, readOutside: false, writtenOutside: false),
VariableStyle
.None);
121
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: false, readOutside: false, writtenOutside: true),
VariableStyle
.SplitOut);
122
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: false, readOutside: true, writtenOutside: true),
VariableStyle
.SplitOut);
123
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.None);
124
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.SplitOut);
125
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.SplitOut);
126
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: false, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.MoveIn);
127
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: false, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.SplitIn);
128
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.SplitIn);
129
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.SplitIn);
130
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: false, readOutside: false, writtenOutside: true),
VariableStyle
.InputOnly);
131
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: false, readOutside: true, writtenOutside: true),
VariableStyle
.Ref);
132
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.MoveIn);
133
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.SplitIn);
134
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.SplitIn);
135
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.SplitIn);
136
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: true, readInside: false, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.None);
137
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: true, readInside: false, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.SplitOut);
138
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: true, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.SplitOut);
139
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: true, readInside: true, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.None);
140
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: true, readInside: true, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.SplitOut);
141
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: false, alwaysAssigned: true, variableDeclared: true, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.SplitOut);
142
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.Ref);
143
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Ref);
144
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.Ref);
145
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Ref);
146
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: false, readOutside: true, writtenOutside: false),
VariableStyle
.NotUsed);
147
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: false, readOutside: true, writtenOutside: true),
VariableStyle
.NotUsed);
148
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithMoveOut);
149
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.OutWithMoveOut);
150
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: false, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithMoveOut);
151
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: false, readOutside: true, writtenOutside: true),
VariableStyle
.OutWithMoveOut);
152
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithMoveOut);
153
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: false, variableDeclared: true, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.OutWithMoveOut);
154
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.Out);
155
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Out);
156
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.Out);
157
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Out);
158
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: true, readInside: false, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithMoveOut);
159
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: true, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.OutWithMoveOut);
160
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: true, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithMoveOut);
161
s_matrix.Add(new Key(dataFlowIn: false, dataFlowOut: true, alwaysAssigned: true, variableDeclared: true, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.OutWithMoveOut);
162
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: false, readOutside: false, writtenOutside: false),
VariableStyle
.InputOnly);
163
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: false, readOutside: false, writtenOutside: true),
VariableStyle
.InputOnly);
164
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: false, readOutside: true, writtenOutside: false),
VariableStyle
.InputOnly);
165
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: false, readOutside: true, writtenOutside: true),
VariableStyle
.InputOnly);
166
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.InputOnly);
167
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.InputOnly);
168
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.InputOnly);
169
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.InputOnly);
170
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: false),
VariableStyle
.InputOnly);
171
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: false, writtenOutside: true),
VariableStyle
.InputOnly);
172
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.InputOnly);
173
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: false, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.InputOnly);
174
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: false, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Ref);
175
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithErrorInput);
176
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: true, alwaysAssigned: false, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Ref);
177
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: true, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: false),
VariableStyle
.OutWithErrorInput);
178
s_matrix.Add(new Key(dataFlowIn: true, dataFlowOut: true, alwaysAssigned: true, variableDeclared: false, readInside: true, writtenInside: true, readOutside: true, writtenOutside: true),
VariableStyle
.Ref);
ExtractMethod\MethodExtractor.Analyzer.cs (17)
52
protected abstract VariableInfo CreateFromSymbol(Compilation compilation, ISymbol symbol, ITypeSymbol type,
VariableStyle
variableStyle, bool variableDeclared);
407
/// variable we don't understand has <see cref="
VariableStyle
.None"/></param>
501
out
var
variableStyle))
531
out
VariableStyle
variableStyle)
557
if (captured && variableStyle ==
VariableStyle
.MoveIn)
559
variableStyle =
VariableStyle
.Out;
649
protected static
VariableStyle
AlwaysReturn(
VariableStyle
style)
651
if (style ==
VariableStyle
.InputOnly)
653
return
VariableStyle
.Ref;
656
if (style ==
VariableStyle
.MoveIn)
658
return
VariableStyle
.Out;
661
if (style ==
VariableStyle
.SplitIn)
663
return
VariableStyle
.Out;
666
if (style ==
VariableStyle
.SplitOut)
668
return
VariableStyle
.OutWithMoveOut;
946
VariableStyle
style,
ExtractMethod\MethodExtractor.VariableInfo.cs (2)
21
private readonly
VariableStyle
_variableStyle;
26
VariableStyle
variableStyle,
ExtractMethod\VariableStyle.cs (13)
14
public static readonly
VariableStyle
None =
17
public static readonly
VariableStyle
InputOnly =
20
public static readonly
VariableStyle
Delete =
23
public static readonly
VariableStyle
MoveOut =
26
public static readonly
VariableStyle
SplitOut =
29
public static readonly
VariableStyle
MoveIn =
32
public static readonly
VariableStyle
SplitIn =
35
public static readonly
VariableStyle
NotUsed =
38
public static readonly
VariableStyle
Ref =
41
public static readonly
VariableStyle
OnlyAsRefParam =
44
public static readonly
VariableStyle
Out =
47
public static readonly
VariableStyle
OutWithErrorInput =
50
public static readonly
VariableStyle
OutWithMoveOut =
Microsoft.CodeAnalysis.VisualBasic.Features (1)
ExtractMethod\VisualBasicMethodExtractor.Analyzer.vb (1)
31
type As ITypeSymbol, style As
VariableStyle
, requiresDeclarationExpressionRewrite As Boolean) As VariableInfo