## 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: http://java.sun.com/docs/books/jls/third_edition/html/conversions.html Section 5.6.2:

If any of the operands is of a reference type, unboxing conversion (�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

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 multiply directly here for some types of operand, otherwise delegates to any registered overloader for types it does not recognize.

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 multiply directly here for some types of operand, otherwise delegates to any registered overloader for types it does not recognize. Supported types here are:
  - integers
  - doubles
  - string and int ('abc' * 2 == 'abcabc')

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