.visitorDispatch(
(visitorParam, visitorType, constructors) -> visitorDispatchOptionalGetterImpl(optionModel, adt, visitorType,
constructors, arg, field, returnType))
.functionsDispatch(
constructors -> functionsDispatchOptionalGetterImpl(optionModel, adt, arg, constructors, field, returnType)))
<BUG>.otherwise(DerivedCodeSpec::none)

.apply(adt.dataConstruction());</BUG>
}
private DerivedCodeSpec visitorDispatchOptionalGetterImpl(OptionModel optionModel, AlgebraicDataType adt,

.visitorDispatch(
(visitorParam, visitorType, constructors) -> visitorDispatchOptionalGetterImpl(optionModel, adt, visitorType,
constructors, arg, field, returnType))
.functionsDispatch(
constructors -> functionsDispatchOptionalGetterImpl(optionModel, adt, arg, constructors, field, returnType)))
.otherwise(DerivedCodeSpec::none);
}
private DerivedCodeSpec visitorDispatchOptionalGetterImpl(OptionModel optionModel, AlgebraicDataType adt,
