Skip to content

Commit a0cac46

Browse files
committed
Merge the two CachedEntityFactory classes
1 parent 02bd204 commit a0cac46

File tree

9 files changed

+17
-40
lines changed

9 files changed

+17
-40
lines changed

csharp/extractor/Semmle.Extraction.CSharp/CachedEntityFactory.cs

Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
1-
namespace Semmle.Extraction
1+
namespace Semmle.Extraction.CSharp
22
{
33
/// <summary>
44
/// A factory for creating cached entities.
55
/// </summary>
6-
public abstract class CachedEntityFactory<TInit, TEntity> where TEntity : Semmle.Extraction.CachedEntity
6+
public abstract class CachedEntityFactory<TInit, TEntity> where TEntity : CachedEntity
77
{
8-
/// <summary>
9-
/// Initializes the entity, but does not generate any trap code.
10-
/// </summary>
11-
public abstract TEntity Create(Semmle.Extraction.Context cx, TInit init);
8+
public abstract TEntity Create(Context cx, TInit init);
129
}
1310
}

csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/CachedEntityFactoryExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using Microsoft.CodeAnalysis;
22

3-
namespace Semmle.Extraction
3+
namespace Semmle.Extraction.CSharp
44
{
55
public static class CachedEntityFactoryExtensions
66
{

csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/Entity.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
using System;
22
using System.IO;
33
using Microsoft.CodeAnalysis;
4-
using Semmle.Extraction.CSharp;
54

6-
namespace Semmle.Extraction
5+
namespace Semmle.Extraction.CSharp
76
{
87
public abstract class Entity : IEntity
98
{
10-
public virtual Context Context { get; }
9+
public virtual Semmle.Extraction.Context Context { get; }
1110

12-
protected Entity(Context context)
11+
protected Entity(Semmle.Extraction.Context context)
1312
{
1413
this.Context = context;
1514
}

csharp/extractor/Semmle.Extraction.CSharp/Entities/Base/LabelledEntity.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace Semmle.Extraction.CSharp
22
{
3-
public abstract class LabelledEntity : Semmle.Extraction.Entity
3+
public abstract class LabelledEntity : Entity
44
{
55
protected LabelledEntity(Semmle.Extraction.Context cx) : base(cx)
66
{

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace Semmle.Extraction.CSharp.Entities
22
{
3-
internal abstract class CachedEntity<T> : Extraction.CachedEntity<T> where T : notnull
3+
public abstract class CachedEntity<T> : Extraction.CachedEntity<T> where T : notnull
44
{
55
public override Context Context => (Context)base.Context;
66

csharp/extractor/Semmle.Extraction.CSharp/Entities/Locations/Folder.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
namespace Semmle.Extraction.CSharp.Entities
44
{
5-
public sealed class Folder : Extraction.CachedEntity<PathTransformer.ITransformedPath>
5+
public sealed class Folder : CachedEntity<PathTransformer.ITransformedPath>
66
{
7-
private Folder(Extraction.Context cx, PathTransformer.ITransformedPath init) : base(cx, init) { }
7+
private Folder(Context cx, PathTransformer.ITransformedPath init) : base(cx, init) { }
88

99
public override void Populate(TextWriter trapFile)
1010
{
@@ -21,16 +21,16 @@ public override void WriteId(EscapingTextWriter trapFile)
2121
trapFile.Write(";folder");
2222
}
2323

24-
public static Folder Create(Extraction.Context cx, PathTransformer.ITransformedPath folder) =>
24+
public static Folder Create(Context cx, PathTransformer.ITransformedPath folder) =>
2525
FolderFactory.Instance.CreateEntity(cx, folder, folder);
2626

2727
public override Microsoft.CodeAnalysis.Location? ReportingLocation => null;
2828

29-
private class FolderFactory : Extraction.CachedEntityFactory<PathTransformer.ITransformedPath, Folder>
29+
private class FolderFactory : CachedEntityFactory<PathTransformer.ITransformedPath, Folder>
3030
{
3131
public static FolderFactory Instance { get; } = new FolderFactory();
3232

33-
public override Folder Create(Extraction.Context cx, PathTransformer.ITransformedPath init) => new Folder(cx, init);
33+
public override Folder Create(Context cx, PathTransformer.ITransformedPath init) => new Folder(cx, init);
3434
}
3535

3636
public override int GetHashCode() => Symbol.GetHashCode();

csharp/extractor/Semmle.Extraction.CSharp/Entities/Locations/GeneratedLocation.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public override void WriteId(EscapingTextWriter trapFile)
2828

2929
public override bool Equals(object? obj) => obj is not null && obj.GetType() == typeof(GeneratedLocation);
3030

31-
public static GeneratedLocation Create(Extraction.Context cx) => GeneratedLocationFactory.Instance.CreateEntity(cx, typeof(GeneratedLocation), null);
31+
public static GeneratedLocation Create(Context cx) => GeneratedLocationFactory.Instance.CreateEntity(cx, typeof(GeneratedLocation), null);
3232

3333
private class GeneratedLocationFactory : CachedEntityFactory<string?, GeneratedLocation>
3434
{

csharp/extractor/Semmle.Extraction.CSharp/_Base/Context.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ private TEntity CreateEntity<TInit, TCacheKey, TEntity>(CachedEntityFactory<TIni
107107
using (StackGuard)
108108
{
109109
var label = GetNewLabel();
110-
var entity = factory.Create(this, init);
110+
var entity = factory.Create((CSharp.Context)this, init);
111111
entity.Label = label;
112112

113113
dictionary[cacheKey] = entity;
@@ -493,7 +493,7 @@ public void Try(SyntaxNode? node, ISymbol? symbol, Action a)
493493
}
494494

495495
public virtual CSharp.Entities.Location CreateLocation() =>
496-
CSharp.Entities.GeneratedLocation.Create(this);
496+
CSharp.Entities.GeneratedLocation.Create((CSharp.Context)this);
497497

498498
public virtual CSharp.Entities.Location CreateLocation(Microsoft.CodeAnalysis.Location? location) =>
499499
CreateLocation();

0 commit comments

Comments
 (0)