int mystery_function(int x, int y)
{
  if (x == 0 && y == 0)
    return 0;
  else if (x == 0 || y == 0)
    return 1;
  else 
    return x + y;
}
反向工程以下代码片段，编写一个描述其功能的说明。
这个函数带有两个整数参数，x和y。如果x和y都等于0，它将返回0；如果x或y之一等于0，它将返回1；否则，如果x和y都不等于0，则返回x和y的总和。