.addStatement("return $1L -> $1L.$2L($3L)", nameAllocator.get("adt var"), adt.matchMethod().element().getSimpleName(),
nameAllocator.get("visitor var"))
.build();
}
static String totalMatchBuilderClassName(DataConstructor currentConstructor) {
<BUG>return "TotalMatchBuilder" + Utils.capitalize(currentConstructor.name());
</BUG>
}
private static CodeBlock oneConstructorImpl(DataConstructor currentConstructor, AlgebraicDataType adt) {
NameAllocator nameAllocator = new NameAllocator();

.addStatement("return $1L -> $1L.$2L($3L)", nameAllocator.get("adt var"), adt.matchMethod().element().getSimpleName(),
nameAllocator.get("visitor var"))
.build();
}
static String totalMatchBuilderClassName(DataConstructor currentConstructor) {
return "TotalMatcher_" + Utils.capitalize(currentConstructor.name());
}
private static CodeBlock oneConstructorImpl(DataConstructor currentConstructor, AlgebraicDataType adt) {
NameAllocator nameAllocator = new NameAllocator();
