[backend]
name = "java-jdbc"
language = "java"
file_extension = "java"
engine = "snowflake"
description = "Java code generation targeting JDBC with Snowflake"
[types.scalars]
bool = "boolean"
int16 = "short"
int32 = "int"
int64 = "long"
float32 = "float"
float64 = "double"
string = "String"
bytes = "byte[]"
uuid = "String"
decimal = "java.math.BigDecimal"
date = "java.time.LocalDate"
time = "java.time.LocalTime"
time_tz = "java.time.OffsetTime"
datetime = "java.time.LocalDateTime"
datetime_tz = "java.time.OffsetDateTime"
interval = "String"
json = "String"
inet = "String"
[types.containers]
array = "java.util.List<{T}>"
nullable = "@Nullable {T}"
json_typed = "{T}"
[naming]
struct_case = "PascalCase"
fn_case = "camelCase"
enum_variant_case = "SCREAMING_SNAKE_CASE"
row_suffix = "Row"
sanitize_field_names = true
reserved = [
"abstract",
"assert",
"boolean",
"break",
"byte",
"case",
"catch",
"char",
"class",
"const",
"continue",
"default",
"do",
"double",
"else",
"enum",
"extends",
"final",
"finally",
"float",
"for",
"goto",
"if",
"implements",
"import",
"instanceof",
"int",
"interface",
"long",
"native",
"new",
"package",
"private",
"protected",
"public",
"return",
"short",
"static",
"strictfp",
"super",
"switch",
"synchronized",
"this",
"throw",
"throws",
"transient",
"try",
"void",
"volatile",
"while",
"var",
"yield",
"record",
"sealed",
"permits",
"true",
"false",
"null",
]
[imports.rules]