{
  "comment" : "This is generated by ESQL's AbstractFunctionTestCase. Do not edit it. See ../README.md for how to regenerate it.",
  "type" : "operator",
  "operator" : "+",
  "name" : "add",
  "description" : "Add two numbers together. If either field is multivalued then the result is `null`.",
  "signatures" : [
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date_period",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "time_duration",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date_nanos",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date_period",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date_nanos"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date_nanos",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "time_duration",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date_nanos"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date_period",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date_period",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date_nanos",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date_nanos"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "date_period",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date_period",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date_period"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "double",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "double",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "double"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "double",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "integer",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "double"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "double",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "double"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "integer",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "double",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "double"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "integer",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "integer",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "integer"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "integer",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "long"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "double",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "double"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "integer",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "long"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "long"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "time_duration",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "time_duration",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "date_nanos",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "date_nanos"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "time_duration",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "time_duration",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "time_duration"
    },
    {
      "params" : [
        {
          "name" : "lhs",
          "type" : "unsigned_long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        },
        {
          "name" : "rhs",
          "type" : "unsigned_long",
          "optional" : false,
          "description" : "A numeric value or a date time value."
        }
      ],
      "variadic" : false,
      "returnType" : "unsigned_long"
    }
  ],
  "preview" : false,
  "snapshot_only" : false
}
