public IntersectionResult(T value)
 {
     ResultType = IntersectionResultType.Value;
     Value      = value;
 }
 public IntersectionResult(List <T> values)
 {
     ResultType = IntersectionResultType.Multiple;
     Values     = values;
 }
 public IntersectionResult(IntersectionResultType resultType)
 {
     ResultType = resultType;
 }