File tree Expand file tree Collapse file tree
core/src/main/java/org/opensearch/sql
expression/function/udf/ip Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -97,6 +97,8 @@ public static SqlTypeName convertRelDataTypeToSqlTypeName(RelDataType type) {
9797 case EXPR_DATE -> SqlTypeName .DATE ;
9898 case EXPR_TIME -> SqlTypeName .TIME ;
9999 case EXPR_TIMESTAMP -> SqlTypeName .TIMESTAMP ;
100+ case EXPR_IP -> SqlTypeName .VARCHAR ;
101+ case EXPR_BINARY -> SqlTypeName .VARBINARY ;
100102 default -> type .getSqlTypeName ();
101103 };
102104 }
Original file line number Diff line number Diff line change 1212import org .apache .calcite .linq4j .tree .Expression ;
1313import org .apache .calcite .linq4j .tree .Expressions ;
1414import org .apache .calcite .rex .RexCall ;
15+ import org .apache .calcite .sql .type .OperandTypes ;
1516import org .apache .calcite .sql .type .ReturnTypes ;
1617import org .apache .calcite .sql .type .SqlReturnTypeInference ;
1718import org .opensearch .sql .data .model .ExprIpValue ;
1819import org .opensearch .sql .data .model .ExprValue ;
1920import org .opensearch .sql .data .model .ExprValueUtils ;
2021import org .opensearch .sql .expression .function .ImplementorUDF ;
22+ import org .opensearch .sql .expression .function .UDFOperandMetadata ;
2123import org .opensearch .sql .expression .ip .IPFunctions ;
2224
2325/**
@@ -40,6 +42,13 @@ public SqlReturnTypeInference getReturnTypeInference() {
4042 return ReturnTypes .BOOLEAN_FORCE_NULLABLE ;
4143 }
4244
45+ @ Override
46+ public UDFOperandMetadata getOperandMetadata () {
47+ // EXPR_IP is mapped to SqlTypeFamily.VARCHAR in
48+ // UserDefinedFunctionUtils.convertRelDataTypeToSqlTypeName
49+ return UDFOperandMetadata .wrap (OperandTypes .STRING_STRING );
50+ }
51+
4352 public static class CidrMatchImplementor implements NotNullImplementor {
4453 @ Override
4554 public Expression implement (
You can’t perform that action at this time.
0 commit comments