private boolean skipComment() throws IOException {
        // Skip comments that can appear anywhere whitespace can appear.
        if (allowComments && current == '/') {
            // Skip the opening '/'.
            read();

            // The next character must be "/";
            if (!readChar('/')) {
                throw expected("Expected '/' to form a valid comment");
            }

            // Read until EOF or a newline.
            while (!isEndOfText() && current != '\n') {
                read();
            }

            // Skip the newline.
            if (current == '\n') {
                read();
            }

            return true;
        }

        return false;
    }
Reads the entire input from the given reader and parses it as JSON. The input must contain a
valid JSON value, optionally padded with whitespace.
<p>
Characters are read in chunks into an input buffer of the given size. Hence, wrapping a reader
in an additional <code>BufferedReader</code> likely won't improve reading performance.
</p>

@param reader the reader to read the input from
@param buffersize the size of the input buffer in chars
@throws IOException if an I/O error occurs in the reader
@throws ModelSyntaxException if the input is not valid JSON
smithy-model/src/main/java/software/amazon/smithy/model/node/internal/JsonParser.java