Skip to content

Commit 47ca4b0

Browse files
committed
Address review comments
1 parent 55d47a7 commit 47ca4b0

File tree

3 files changed

+16
-21
lines changed

3 files changed

+16
-21
lines changed

csharp/extractor/Semmle.Extraction.CSharp/Entities/Expressions/Lambda.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,9 @@ private void VisitParameter(ParameterSyntax p)
2424
private Lambda(ExpressionNodeInfo info, CSharpSyntaxNode body, IEnumerable<ParameterSyntax> @params)
2525
: base(info)
2626
{
27-
var symbol = cx.GetModel(info.Node).GetSymbolInfo(info.Node).Symbol as IMethodSymbol;
28-
29-
if (symbol is object)
27+
if (cx.GetModel(info.Node).GetSymbolInfo(info.Node).Symbol is IMethodSymbol symbol)
3028
{
31-
Modifier.ExtractStaticModifier(cx, info.Context.TrapWriter.Writer, this, symbol);
32-
Modifier.ExtractAsyncModifier(cx, info.Context.TrapWriter.Writer, this, symbol);
29+
Modifier.ExtractModifiers(cx, info.Context.TrapWriter.Writer, this, symbol);
3330
}
3431
else
3532
{

csharp/extractor/Semmle.Extraction.CSharp/Entities/Modifier.cs

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,10 @@ public static void ExtractModifiers(Context cx, TextWriter trapFile, IEntity key
8686
if (symbol.IsSealed)
8787
HasModifier(cx, trapFile, key, "sealed");
8888

89-
ExtractStaticModifier(cx, trapFile, key, symbol);
89+
var fromSource = symbol.DeclaringSyntaxReferences.Length > 0;
90+
91+
if (symbol.IsStatic && !(symbol.Kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst && !fromSource))
92+
HasModifier(cx, trapFile, key, "static");
9093

9194
if (symbol.IsVirtual)
9295
HasModifier(cx, trapFile, key, "virtual");
@@ -101,7 +104,8 @@ public static void ExtractModifiers(Context cx, TextWriter trapFile, IEntity key
101104
if (symbol.IsOverride)
102105
HasModifier(cx, trapFile, key, "override");
103106

104-
ExtractAsyncModifier(cx, trapFile, key, symbol);
107+
if (symbol.Kind == SymbolKind.Method && ((IMethodSymbol)symbol).IsAsync)
108+
HasModifier(cx, trapFile, key, "async");
105109

106110
if (symbol.IsExtern)
107111
HasModifier(cx, trapFile, key, "extern");
@@ -125,20 +129,6 @@ public static void ExtractModifiers(Context cx, TextWriter trapFile, IEntity key
125129
}
126130
}
127131

128-
public static void ExtractAsyncModifier(Context cx, TextWriter trapFile, IEntity key, ISymbol symbol)
129-
{
130-
if (symbol.Kind == SymbolKind.Method && ((IMethodSymbol)symbol).IsAsync)
131-
HasModifier(cx, trapFile, key, "async");
132-
}
133-
134-
public static void ExtractStaticModifier(Context cx, TextWriter trapFile, IEntity key, ISymbol symbol)
135-
{
136-
var fromSource = symbol.DeclaringSyntaxReferences.Length > 0;
137-
138-
if (symbol.IsStatic && !(symbol.Kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst && !fromSource))
139-
HasModifier(cx, trapFile, key, "static");
140-
}
141-
142132
public static Modifier Create(Context cx, string modifier)
143133
{
144134
return ModifierFactory.Instance.CreateEntity(cx, (typeof(Modifier), modifier), modifier);
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
| Discard.cs:7:33:7:52 | (...) => ... | private |
2+
| Discard.cs:8:13:8:24 | (...) => ... | private |
3+
| Discard.cs:9:13:9:32 | (...) => ... | private |
4+
| Discard.cs:10:13:10:49 | delegate(...) { ... } | private |
5+
| LambdaModifier.cs:11:11:11:27 | (...) => ... | private |
16
| LambdaModifier.cs:11:11:11:27 | (...) => ... | static |
7+
| LambdaModifier.cs:12:11:12:20 | (...) => ... | private |
8+
| LambdaModifier.cs:13:11:13:51 | delegate(...) { ... } | private |
29
| LambdaModifier.cs:13:11:13:51 | delegate(...) { ... } | static |
310
| LambdaModifier.cs:15:24:15:64 | (...) => ... | async |
11+
| LambdaModifier.cs:15:24:15:64 | (...) => ... | private |

0 commit comments

Comments
 (0)