Class AbstractYangXPathMathSupport<N extends YangNumberExpr>

java.lang.Object
org.opendaylight.yangtools.yang.xpath.api.AbstractYangXPathMathSupport<N>
Type Parameters:
N - Type of YangNumberExpr
All Implemented Interfaces:
Serializable, YangXPathMathSupport

public abstract class AbstractYangXPathMathSupport<N extends YangNumberExpr> extends Object implements YangXPathMathSupport
Type-safe shim to ensure concrete YangXPathMathSupport implementations get handed properly-typed YangNumberExprs.
See Also:
  • Constructor Details

    • AbstractYangXPathMathSupport

      protected AbstractYangXPathMathSupport(Class<N> numberClass)
  • Method Details

    • negateNumber

      public final N negateNumber(YangNumberExpr number)
      Description copied from interface: YangXPathMathSupport
      Create a YangNumberExpr representing the negated value of a number.
      Specified by:
      negateNumber in interface YangXPathMathSupport
      Parameters:
      number - input number
      Returns:
      negated number expression
    • tryEvaluate

      public final Optional<YangExpr> tryEvaluate(YangBinaryOperator operator, YangNumberExpr left, YangNumberExpr right)
      Description copied from interface: YangXPathMathSupport
      Attempt to evaluate an operator and its left- and right-handside.
      Specified by:
      tryEvaluate in interface YangXPathMathSupport
      Parameters:
      operator - Operator to apply
      left - Left hand-side
      right - Right hand-side
      Returns:
      Evaluation result, if evaluation succeeded
    • doNegateNumber

      protected abstract N doNegateNumber(N number)
      Create a YangNumberExpr representing the negated value of a number.
      Parameters:
      number - input number
      Returns:
      negated number expression
    • doEvaluate

      protected abstract YangExpr doEvaluate(YangBinaryOperator operator, N left, N right)
      Evaluate an operator and its left- and right-handside.
      Parameters:
      operator - Operator to apply
      left - Left hand-side
      right - Right hand-side
      Returns:
      Evaluation result
    • readResolve

      protected abstract Object readResolve()