ReSharper.FSharp/src/FSharp/FSharp.Psi/src/Impl/Tree/ReferenceOwnerBase.cs [9:33]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - private FSharpSymbolReference myReference; protected override void PreInit() { base.PreInit(); myReference = null; } public FSharpSymbolReference Reference { get { if (myReference == null) lock (this) myReference ??= CreateReference(); return myReference; } } public abstract IFSharpIdentifier NameIdentifier { get; } protected abstract FSharpSymbolReference CreateReference(); public override ReferenceCollection GetFirstClassReferences() => new(Reference); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ReSharper.FSharp/src/FSharp/FSharp.Psi/src/Impl/Tree/ReferenceOwnerExprBase.cs [9:33]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - private FSharpSymbolReference myReference; protected override void PreInit() { base.PreInit(); myReference = null; } public FSharpSymbolReference Reference { get { if (myReference == null) lock (this) myReference ??= CreateReference(); return myReference; } } public abstract IFSharpIdentifier NameIdentifier { get; } protected abstract FSharpSymbolReference CreateReference(); public override ReferenceCollection GetFirstClassReferences() => new(Reference); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -