private Object structureOrUnion(Shape shape) {
        return withCopiedVisitors(() -> {
            Map<String, Object> result = new LinkedHashMap<>();
            for (MemberShape member : shape.members()) {
                Object memberValue = member.accept(this);
                result.put(member.getMemberName(), memberValue);
            }
            return result;
        });
    }
Generates fake data from a modeled shape for static JMESPath analysis.
smithy-waiters/src/main/java/software/amazon/smithy/waiters/ModelRuntimeTypeGenerator.java