@Override public FunctionDefinition[] getFunctionDefintions() { return new FunctionDefinition[] { FunctionDefinition.simple( "bytesubstring", new BasicArgumentValidator( new Arg( Types.required(TypeProtos.MinorType.VARBINARY), Types.optional(TypeProtos.MinorType.VARBINARY)), new Arg(false, false, "offset", TypeProtos.MinorType.BIGINT), new Arg(false, false, "length", TypeProtos.MinorType.BIGINT)), new OutputTypeDeterminer.SameAsFirstInput(), "byte_substr") }; }