// Copyright (c) Microsoft Corporation.// Licensed under the MIT license.#include "precomp.h"#include "inputReadHandleData.h"INPUT_READ_HANDLE_DATA::INPUT_READ_HANDLE_DATA() :_isInputPending{ false },_isMultilineInput{ false },_readCount{ 0 },_buffer{}{}bool INPUT_READ_HANDLE_DATA::IsInputPending() const{return _isInputPending;}bool INPUT_READ_HANDLE_DATA::IsMultilineInput() const{FAIL_FAST_IF(!_isInputPending); // we shouldn't have multiline input without a pending input.return _isMultilineInput;}void INPUT_READ_HANDLE_DATA::SaveMultilinePendingInput(std::wstring_view pending){_isMultilineInput = true;SavePendingInput(pending);}void INPUT_READ_HANDLE_DATA::SavePendingInput(std::wstring_view pending){_isInputPending = true;UpdatePending(pending);}void INPUT_READ_HANDLE_DATA::UpdatePending(std::wstring_view pending){_buffer = pending;}void INPUT_READ_HANDLE_DATA::CompletePending(){_isInputPending = false;_isMultilineInput = false;_buffer.clear();}std::wstring_view INPUT_READ_HANDLE_DATA::GetPendingInput() const{return _buffer;}void INPUT_READ_HANDLE_DATA::IncrementReadCount(){_readCount++;}void INPUT_READ_HANDLE_DATA::DecrementReadCount(){const size_t prevCount = _readCount.fetch_sub(1);FAIL_FAST_IF(prevCount == 0); // we just underflowed, that's a programming error.}size_t INPUT_READ_HANDLE_DATA::GetReadCount(){return _readCount;}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。