@Override
        protected Void getDefault(Shape shape) {
            writer.openBlock("public Builder $1L($2B $1L) {",
                    "}",
                    memberName,
                    symbolProvider.toSymbol(shape),
                    () -> {
                        writer.write("this.$1L = $1L;", memberName);
                        writer.writeWithNoFormatting("return this;");
                    }).newLine();
            return null;
        }
Generates a static builder for a Java class.

<p>In addition to the static builder class, this generator will create
{@code builder()} and {@code toBuilder()} methods for the target class.
smithy-trait-codegen/src/main/java/software/amazon/smithy/traitcodegen/generators/BuilderGenerator.java