类 Operator.DescriptorComparison

java.lang.Object
cn.taketoday.expression.spel.ast.Operator.DescriptorComparison
封闭类:
Operator

protected static final class Operator.DescriptorComparison extends Object
A descriptor comparison encapsulates the result of comparing descriptor for two operands and describes at what level they are compatible.
  • 字段详细资料

    • NOT_NUMBERS

      static final Operator.DescriptorComparison NOT_NUMBERS
    • INCOMPATIBLE_NUMBERS

      static final Operator.DescriptorComparison INCOMPATIBLE_NUMBERS
    • areNumbers

      public final boolean areNumbers
    • areCompatible

      public final boolean areCompatible
    • compatibleType

      public final char compatibleType
  • 构造器详细资料

    • DescriptorComparison

      private DescriptorComparison(boolean areNumbers, boolean areCompatible, char compatibleType)
  • 方法详细资料

    • checkNumericCompatibility

      public static Operator.DescriptorComparison checkNumericCompatibility(@Nullable String leftDeclaredDescriptor, @Nullable String rightDeclaredDescriptor, @Nullable String leftActualDescriptor, @Nullable String rightActualDescriptor)
      Return an object that indicates whether the input descriptors are compatible.

      A declared descriptor is what could statically be determined (e.g. from looking at the return value of a property accessor method) whilst an actual descriptor is the type of an actual object that was returned, which may differ.

      For generic types with unbound type variables, the declared descriptor discovered may be 'Object' but from the actual descriptor it is possible to observe that the objects are really numeric values (e.g. ints).

      参数:
      leftDeclaredDescriptor - the statically determinable left descriptor
      rightDeclaredDescriptor - the statically determinable right descriptor
      leftActualDescriptor - the dynamic/runtime left object descriptor
      rightActualDescriptor - the dynamic/runtime right object descriptor
      返回:
      a DescriptorComparison object indicating the type of compatibility, if any