namespace Semmle.Util { /// /// An instance of this class maintains a shared reference to an object. /// This makes it possible for several different parts of the code to /// share access to an object that can change (that is, they all want /// to refer to the same object, but the object to which they jointly /// refer may vary over time). /// /// The type of the shared object. public sealed class SharedReference where T : class { /// /// The shared object to which different parts of the code want to refer. /// public T? Obj { get; set; } } }