public override ReferenceCollection GetFirstClassReferences() { if (myReferences == null) { lock (this) { if (myReferences == null) { if (SymbolReference == null) { SymbolReference = new FSharpSymbolReference(this); } var appExpr = PrefixAppExprNavigator.GetByFunctionExpression(this.IgnoreParentParens()); if (appExpr == null) { myReferences = new IReference[] { SymbolReference }; } else { CtorTypeReference = new ReferenceExpressionTypeReference(this); myReferences = new IReference[] { SymbolReference, CtorTypeReference }; } } } } return(new ReferenceCollection(myReferences)); }
protected override void PreInit() { base.PreInit(); SymbolReference = null; CtorTypeReference = null; myReferences = null; }
public FSharpAnonRecordFieldProperty(FSharpSymbolReference reference) =>
protected override void PreInit() { base.PreInit(); Reference = new CtorReference(this); }
protected override void PreInit() { base.PreInit(); Reference = new TypeExtensionReference(this); }
protected override void PreInit() { base.PreInit(); mySymbolReference = new FSharpSymbolReference(this); }
protected override void PreInit() { base.PreInit(); myReference = null; }