## org.springframework.expression.spel.ast
Class OpMultiply

    java.lang.Object
      org.springframework.expression.spel.ast.SpelNodeImpl
          org.springframework.expression.spel.ast.Operator
              org.springframework.expression.spel.ast.OpMultiply

All Implemented Interfaces:
  SpelNode

    public class OpMultiply

extends Operator

Implements the `multiply` operator.

Conversions and promotions are handled as defined in Section 5.6.2 of the Java Language Specification:

If any of the operands is of a reference type, unboxing conversion (Section 5.1.8) is performed. Then:
If either operand is of type double, the other is converted to double.
Otherwise, if either operand is of type float, the other is converted to float.
Otherwise, if either operand is of type long, the other is converted to long.
Otherwise, both operands are converted to type int.

Since:
  3.0
Author:
  Andy Clement, Sam Brannen

Field Summary

Fields inherited from class org.springframework.expression.spel.ast.SpelNodeImpl
`children, pos`

Constructor Summary
`OpMultiply(int pos, SpelNodeImpl... operands)`

Method Summary
`TypedValue` `getValueInternal(ExpressionState state)` Implements the `multiply` operator directly here for certain types of supported operands and otherwise delegates to any registered overloader for types not supported here.

Methods inherited from class org.springframework.expression.spel.ast.Operator
`getLeftOperand, getOperatorName, getRightOperand, toStringAST`

Methods inherited from class org.springframework.expression.spel.ast.SpelNodeImpl
`getChild, getChildCount, getEndPosition, getObjectClass, getPreviousChild, getStartPosition, getTypedValue, getValue, getValue, isWritable, nextChildIs, setValue`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### OpMultiply

    public OpMultiply(int pos,
                      SpelNodeImpl... operands)

Method Detail

### getValueInternal

    public TypedValue getValueInternal(ExpressionState state)
                                throws EvaluationException

  Implements the `multiply` operator directly here for certain types of supported operands and otherwise delegates to any registered overloader for types not supported here.

  Supported operand types:

  - doubles
  - longs
  - integers
  - String and int ('abc' * 2 == 'abcabc')

  Specified by:
    `getValueInternal` in class `SpelNodeImpl`
  Throws:
    `EvaluationException`