negative method

  1. @override
Variant negative(
  1. Variant value
)
override

Performs '-' operation for a variant. value The operand for this operation. Returns A result variant object.

Implementation

@override
Variant negative(Variant value) {
  var result = Variant();

  // Processes VariantType.Null values.
  if (value.type == VariantType.Null) {
    return result;
  }

  // Performs operation.
  switch (value.type) {
    case VariantType.Integer:
      result.asInteger = -value.asInteger;
      return result;
    case VariantType.Long:
      result.asLong = -value.asLong;
      return result;
    case VariantType.Float:
      result.asFloat = -value.asFloat;
      return result;
    case VariantType.Double:
      result.asDouble = -value.asDouble;
      return result;
    default:
      throw Exception("Operation unary '-' is not supported for type " +
          typeToString(value.type));
  }
}