52 references to ValueUsageInfo
ILLink.RoslynAnalyzer (52)
DataFlow\LocalDataFlowVisitor.cs (15)
193 => ProcessBinderCall (operation, operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write) ? "SetMember" : "GetMember", state); 196 => ProcessBinderCall (operation, operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write) ? "SetIndex" : "GetIndex", state); 398 Debug.Assert (flowCaptureReference.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write)); 453 Debug.Assert (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Read), 472 Debug.Assert (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write), 474 Debug.Assert (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Reference), 479 if (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write)) { 599 if (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write)) { 624 Debug.Assert (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Read)); 625 if (!operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Read)) 636 if (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Write)) { 638 Debug.Assert (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Reference)); 657 if (!operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Read)) 672 Debug.Assert (operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Read)); 673 if (!operation.GetValueUsageInfo (OwningSymbol).HasFlag (ValueUsageInfo.Read))
IOperationExtensions.cs (29)
14 /// Returns the <see cref="ValueUsageInfo"/> for the given operation. 17 public static ValueUsageInfo GetValueUsageInfo (this IOperation operation, ISymbol containingSymbol) 43 return ValueUsageInfo.Write; 60 return ValueUsageInfo.Write; 71 return ValueUsageInfo.Write; 81 return ValueUsageInfo.Write; 89 return ValueUsageInfo.Write; 97 return ValueUsageInfo.Write; 103 return ValueUsageInfo.ReadWrite; 110 ? ValueUsageInfo.ReadWrite 111 : ValueUsageInfo.Write; 113 return ValueUsageInfo.ReadWrite; 119 ~(ValueUsageInfo.Write | ValueUsageInfo.Reference); 123 return ValueUsageInfo.Name; 127 return ValueUsageInfo.ReadableReference; 130 return ValueUsageInfo.WritableReference; 133 return ValueUsageInfo.ReadableWritableReference; 136 return ValueUsageInfo.Read; 140 RefKind.RefReadOnly => ValueUsageInfo.ReadableReference, 141 RefKind.Ref => ValueUsageInfo.ReadableWritableReference, 142 _ => ValueUsageInfo.Read, 149 return ValueUsageInfo.Read; 154 ? ValueUsageInfo.ReadWrite 155 : ValueUsageInfo.Write; 159 return ValueUsageInfo.Write; 164 return ValueUsageInfo.ReadableWritableReference; 167 return ValueUsageInfo.ReadableReference; 172 return ValueUsageInfo.Read;
ValueUsageInfo.cs (8)
69 public static bool IsReadFrom (this ValueUsageInfo valueUsageInfo) 70 => (valueUsageInfo & ValueUsageInfo.Read) != 0; 72 public static bool IsWrittenTo (this ValueUsageInfo valueUsageInfo) 73 => (valueUsageInfo & ValueUsageInfo.Write) != 0; 75 public static bool IsNameOnly (this ValueUsageInfo valueUsageInfo) 76 => (valueUsageInfo & ValueUsageInfo.Name) != 0; 78 public static bool IsReference (this ValueUsageInfo valueUsageInfo) 79 => (valueUsageInfo & ValueUsageInfo.Reference) != 0;