private static String nodeClassToSimpleTypeName(String className) {
        return className.replace("Node", "").toLowerCase(Locale.ENGLISH);
    }
Gets the elements of the ArrayNode as a specific type by applying
a mapping function to each node.

<p>Each Node is cast to {@code K} and then mapped with the provided
function to return type {@code T}.

<pre>{@code
ArrayNode array = Node.fromStrings("foo", "baz", "bar");
List<String> strings = array.getElementsAs(StringNode::getValue);
}</pre>

@param f Mapping function that takes {@code K} and return {@code T}.
@param <K> Expected Node type.
@param <T> Mapping function return value.

@return Returns the List of type T.
@throws ExpectationNotMetException if the list contains elements of a different type than {@code K}.
smithy-model/src/main/java/software/amazon/smithy/model/node/ArrayNode.java