System\Text\RegularExpressions\Symbolic\CharSetSolver.cs (11)
148public BDD Or(BDD set1, BDD set2) => ApplyBinaryOp(BooleanOperation.Or, set1, set2);
167public BDD And(BDD a, BDD b) => ApplyBinaryOp(BooleanOperation.And, a, b);
199(int, BDD set, BDD?) key = ((int)BooleanOperation.Not, set, null);
212private BDD ApplyBinaryOp(BooleanOperation op, BDD set1, BDD set2)
214Debug.Assert(op is BooleanOperation.Or or BooleanOperation.And or BooleanOperation.Xor);
219case BooleanOperation.Or:
226case BooleanOperation.And:
233case BooleanOperation.Xor:
286public bool IsFull(BDD set) => ApplyBinaryOp(BooleanOperation.Xor, set, Full) == Empty;