Каковы условия и результаты (не)завершения Decoder.Convert

стандартная библиотека .net содержит класс Decoder с методом Convert.

Этот метод декодирует двоичные данные во входном массиве в символьные данные в выходном массиве. Он имеет выходной параметр completed, чтобы указать, были ли использованы все переданные байты.

Этот метод задокументирован, чтобы выбросить ArgumentException, если

The output buffer is too small to contain any of the converted input.

Пока все хорошо, если в выходном буфере недостаточно места, completed ложно, если в выходном буфере вообще нет свободного места, выдается ArgumentException.

Однако в документации по исключениям говорится

The output buffer should be greater than or equal to the size indicated by the GetCharCount method.

что меня смутило. Если выходной буфер должен быть больше или равен размеру метода GetCharCount, не должен ли выходной параметр completed всегда быть истинным? Если да, то какая польза. Как именно сигнализируется (не)завершение?

Возможно актуально: stackoverflow.com/q/49519637/11683

GSerg 18.02.2019 15:51

@GSerg, это выглядит уместно, спасибо за указатель.

Martijn 18.02.2019 17:22
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
2
45
0

Другие вопросы по теме