[backend]
name = "java-r2dbc"
language = "java"
file_extension = "java"
engine = "mysql"
description = "Java code generation targeting R2DBC with MySQL (reactive)"

[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.LocalTime"
datetime = "java.time.LocalDateTime"
datetime_tz = "java.time.LocalDateTime"
interval = "String"
json = "String"
inet = "String"

[types.containers]
array = "java.util.List<{T}>"
nullable = "@Nullable {T}"
json_typed = "{T}"
range = "String"

[naming]
struct_case = "PascalCase"
field_case = "camelCase"
fn_case = "camelCase"
enum_variant_case = "SCREAMING_SNAKE_CASE"
row_suffix = "Row"

[imports.rules]
