public TypeSignature(String base, List<TypeSignatureParameter> parameters) { checkArgument(base != null, "base is null"); this.base = base; checkArgument(!base.isEmpty(), "base is empty"); checkArgument(validateName(base), "Bad characters in base type: %s", base); checkArgument(parameters != null, "parameters is null"); this.parameters = unmodifiableList(new ArrayList<>(parameters)); this.calculated = parameters.stream().anyMatch(TypeSignatureParameter::isCalculated); }
return VarcharType.createUnboundedVarcharType().getTypeSignature(); checkArgument(!literalCalculationParameters.contains(signature), "Bad type signature: '%s'", signature); return new TypeSignature(canonicalizeBaseName(signature), new ArrayList<>()); verify(parameterStart == -1, "Expected parameter start to be -1"); baseName = canonicalizeBaseName(signature.substring(0, i)); checkArgument(!literalCalculationParameters.contains(baseName), "Bad type signature: '%s'", signature); parameterStart = i + 1; checkArgument(bracketCount >= 0, "Bad type signature: '%s'", signature); if (bracketCount == 0) { checkArgument(parameterStart >= 0, "Bad type signature: '%s'", signature); parameters.add(parseTypeSignatureParameter(signature, parameterStart, i, literalCalculationParameters)); parameterStart = i + 1; checkArgument(parameterStart >= 0, "Bad type signature: '%s'", signature); parameters.add(parseTypeSignatureParameter(signature, parameterStart, i, literalCalculationParameters)); parameterStart = i + 1;
private static TypeSignature parseRowTypeSignature(String signature, Set<String> literalParameters) checkArgument(signature.toLowerCase(Locale.ENGLISH).startsWith(StandardTypes.ROW + "("), "Not a row type signature: '%s'", signature); checkArgument(c == ' ', "Bad type signature: '%s'", signature); checkArgument(state == RowTypeSignatureParsingState.FINISHED, "Bad type signature: '%s'", signature); return new TypeSignature(signature.substring(0, StandardTypes.ROW.length()), fields);
public TypeSignature(String base, List<TypeSignatureParameter> parameters) { checkArgument(base != null, "base is null"); this.base = base; checkArgument(!base.isEmpty(), "base is empty"); checkArgument(validateName(base), "Bad characters in base type: %s", base); checkArgument(parameters != null, "parameters is null"); this.parameters = unmodifiableList(new ArrayList<>(parameters)); this.calculated = parameters.stream().anyMatch(TypeSignatureParameter::isCalculated); }
return VarcharType.createUnboundedVarcharType().getTypeSignature(); checkArgument(!literalCalculationParameters.contains(signature), "Bad type signature: '%s'", signature); return new TypeSignature(canonicalizeBaseName(signature), new ArrayList<>()); verify(parameterStart == -1, "Expected parameter start to be -1"); baseName = canonicalizeBaseName(signature.substring(0, i)); checkArgument(!literalCalculationParameters.contains(baseName), "Bad type signature: '%s'", signature); parameterStart = i + 1; checkArgument(bracketCount >= 0, "Bad type signature: '%s'", signature); if (bracketCount == 0) { checkArgument(parameterStart >= 0, "Bad type signature: '%s'", signature); parameters.add(parseTypeSignatureParameter(signature, parameterStart, i, literalCalculationParameters)); parameterStart = i + 1; checkArgument(parameterStart >= 0, "Bad type signature: '%s'", signature); parameters.add(parseTypeSignatureParameter(signature, parameterStart, i, literalCalculationParameters)); parameterStart = i + 1;
private static TypeSignature parseRowTypeSignature(String signature, Set<String> literalParameters) checkArgument(signature.toLowerCase(Locale.ENGLISH).startsWith(StandardTypes.ROW + "("), "Not a row type signature: '%s'", signature); checkArgument(c == ' ', "Bad type signature: '%s'", signature); checkArgument(state == RowTypeSignatureParsingState.FINISHED, "Bad type signature: '%s'", signature); return new TypeSignature(signature.substring(0, StandardTypes.ROW.length()), fields);