@Override
        public Builder id(ShapeId shapeId) {
            super.id(shapeId);
            for (MemberShape member : members.peek().values()) {
                addMember(member.toBuilder().id(shapeId.withMember(member.getMemberName())).build());
            }
            return this;
        }
Adds a synthetic version of the enum trait.

<p>This allows the enum shape to be used as if it were a string shape with
the enum trait, without having to manually add the trait or risk that it
gets serialized.
smithy-model/src/main/java/software/amazon/smithy/model/shapes/EnumShape.java