Mono.CSharp.DefiniteAssignmentBitSet.operator C# (CSharp) Method

operator() public static method

public static operator ( ) : DefiniteAssignmentBitSet
return DefiniteAssignmentBitSet
		public static DefiniteAssignmentBitSet operator & (DefiniteAssignmentBitSet a, DefiniteAssignmentBitSet b)
		{
			if (AreEqual (a, b))
				return a;

			DefiniteAssignmentBitSet res;
			if (a.large_bits == null) {
				res = new DefiniteAssignmentBitSet (a);
				res.bits &= (b.bits & ~copy_on_write_flag);
				return res;
			}

			res = new DefiniteAssignmentBitSet (a);
			res.Clone ();
			var dest = res.large_bits;
			var src = b.large_bits;
			for (int i = 0; i < dest.Length; ++i) {
				dest[i] &= src[i];
			}

			return res;
		}