How Does FindMinimum Handle "Or" Constraints ?

How Does FindMinimum Handle “Or” Constraints?

In[37]:= FindMinimum[{x + y, 
      Or[(x - 2)^2 + y^2 == 1, (x + 2)^2 + (y + 1)^2 == 1]}, {x, y}, 
     Method -> "IPOPT"]
    
    Out[37]= {-4.41421, {x -> -2.70711, y -> -1.70711}}

I frequently use IPOPTLink but it won’t handle Or constraints, so I’m puzzled that FindMinimum can, with Method → "IPOPT:

Presumably FindMinimum can call IPOPT more than once, each time with a problem corresponding to one of the Or’d constraints.