Beispiel #1
0
        public Effects Lub(Effects other)
        {
            var vars     = Vars.Lub(other.Vars);
            var heap     = Heap.Lub(other.Heap);
            var mayThrow = MayThrow.Lub(other.MayThrow);

            if (vars == null || heap == null || mayThrow == null)
            {
                return(null);
            }
            return(new Effects(vars, heap, mayThrow));
        }
Beispiel #2
0
        public PointsTo Lub(PointsTo other)
        {
            var args   = Args.Lub(other.Args);
            var locals = Locals.Lub(other.Locals);
            var heap   = Heap.Lub(other.Heap);

            if (args == null || locals == null || heap == null)
            {
                return(null);
            }
            else
            {
                return(new PointsTo(args, locals, heap));
            }
        }
Beispiel #3
0
        public Effects Lub(Effects other)
        {
            var args     = Args.Lub(other.Args);
            var locals   = Locals.Lub(other.Locals);
            var heap     = Heap.Lub(other.Heap);
            var mayThrow = MayThrow.Lub(other.MayThrow);

            if (args == null || locals == null || heap == null || mayThrow == null)
            {
                return(null);
            }
            else
            {
                return(new Effects(args, locals, heap, mayThrow));
            }
        }