public boolean structCoercesTo()

in zetasql-toolkit-core/src/main/java/com/google/zetasql/toolkit/Coercer.java [512:529]


  public boolean structCoercesTo(
      StructType fromType, Type toType, boolean isLiteral, boolean isParameter) {
    if (!toType.isStruct() || toType.asStruct().getFieldCount() != fromType.getFieldCount()) {
      return false;
    }

    StructType toTypeAsStruct = toType.asStruct();

    for (int i = 0; i < fromType.getFieldCount(); i++) {
      Type fromTypeFieldType = fromType.getField(i).getType();
      Type toTypeFieldType = toTypeAsStruct.getField(i).getType();
      if (!coercesTo(fromTypeFieldType, toTypeFieldType, isLiteral, isParameter)) {
        return false;
      }
    }

    return true;
  }