@Override
    public Builder toBuilder() {
        return builder()
                .token(token)
                .filename(filename)
                .position(position)
                .startLine(startLine)
                .startColumn(startColumn)
                .endLine(endLine)
                .endColumn(endColumn)
                .lexeme(lexeme)
                .errorMessage(errorMessage)
                .numberValue(numberValue)
                .stringContents(stringContents);
    }
Persist the current token of an {@link IdlTokenizer}.

@param tokenizer   Tokenizer to capture.
@param stringTable String table that caches previously created strings.
@return Returns the persisted token.
smithy-syntax/src/main/java/software/amazon/smithy/syntax/CapturedToken.java