示例#1
0
        private PointsToAbstractValue(ImmutableHashSet <AbstractLocation> locations, PointsToAbstractValueKind kind)
        {
            Debug.Assert(locations.IsEmpty == (kind != PointsToAbstractValueKind.Known));

            Locations = locations;
            Kind      = kind;
        }
        private PointsToAbstractValue(PointsToAbstractValueKind kind, NullAbstractValue nullState)
        {
            Debug.Assert(kind != PointsToAbstractValueKind.Known);
            Debug.Assert(nullState != NullAbstractValue.Null);

            Locations = ImmutableHashSet <AbstractLocation> .Empty;
            Kind      = kind;
            NullState = nullState;
        }
        private PointsToAbstractValue(PointsToAbstractValueKind kind, NullAbstractValue nullState)
        {
            Debug.Assert(kind != PointsToAbstractValueKind.KnownLocations);
            Debug.Assert(kind != PointsToAbstractValueKind.KnownLValueCaptures);

            Locations = ImmutableHashSet <AbstractLocation> .Empty;
            LValueCapturedOperations = ImmutableHashSet <IOperation> .Empty;
            Kind      = kind;
            NullState = nullState;
        }
示例#4
0
        public static bool IsInvalidOrUndefined(this PointsToAbstractValueKind kind)
        {
            switch (kind)
            {
            case PointsToAbstractValueKind.Invalid:
            case PointsToAbstractValueKind.Undefined:
                return(true);

            default:
                return(false);
            }
        }
示例#5
0
 private PointsToAbstractValue(PointsToAbstractValueKind kind)
     : this(ImmutableHashSet <AbstractLocation> .Empty, kind)
 {
     Debug.Assert(kind != PointsToAbstractValueKind.Known);
 }
示例#6
0
 private PointsToAbstractValue(ImmutableHashSet <AbstractLocation> locations, PointsToAbstractValueKind kind)
 {
     Locations = locations;
     Kind      = kind;
 }