X-Git-Url: https://git.josue.xyz/?p=VSoRC%2F.git;a=blobdiff_plain;f=node_modules%2Fnode-pty%2Fdeps%2Fwinpty%2Fsrc%2Fshared%2FBuffer.h;fp=node_modules%2Fnode-pty%2Fdeps%2Fwinpty%2Fsrc%2Fshared%2FBuffer.h;h=0000000000000000000000000000000000000000;hp=c2dd382e5b25e7227ec5982ecab5e22aa258c948;hb=5e96dd57ddd883604e87f62bdddcb111c63a6e1a;hpb=acb5f682a2b75b972710cabd81658f63071324b0 diff --git a/node_modules/node-pty/deps/winpty/src/shared/Buffer.h b/node_modules/node-pty/deps/winpty/src/shared/Buffer.h deleted file mode 100644 index c2dd382..0000000 --- a/node_modules/node-pty/deps/winpty/src/shared/Buffer.h +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright (c) 2011-2016 Ryan Prichard -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to -// deal in the Software without restriction, including without limitation the -// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -// sell copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -// IN THE SOFTWARE. - -#ifndef WINPTY_SHARED_BUFFER_H -#define WINPTY_SHARED_BUFFER_H - -#include -#include - -#include -#include -#include -#include - -#include "WinptyException.h" - -class WriteBuffer { -private: - std::vector m_buf; - -public: - WriteBuffer() {} - - template void putRawValue(const T &t) { - putRawData(&t, sizeof(t)); - } - template void replaceRawValue(size_t pos, const T &t) { - replaceRawData(pos, &t, sizeof(t)); - } - - void putRawData(const void *data, size_t len); - void replaceRawData(size_t pos, const void *data, size_t len); - void putInt32(int32_t i); - void putInt64(int64_t i); - void putWString(const wchar_t *str, size_t len); - void putWString(const wchar_t *str) { putWString(str, wcslen(str)); } - void putWString(const std::wstring &str) { putWString(str.data(), str.size()); } - std::vector &buf() { return m_buf; } - - // MSVC 2013 does not generate these automatically, so help it out. - WriteBuffer(WriteBuffer &&other) : m_buf(std::move(other.m_buf)) {} - WriteBuffer &operator=(WriteBuffer &&other) { - m_buf = std::move(other.m_buf); - return *this; - } -}; - -class ReadBuffer { -public: - class DecodeError : public WinptyException { - virtual const wchar_t *what() const WINPTY_NOEXCEPT override { - return L"DecodeError: RPC message decoding error"; - } - }; - -private: - std::vector m_buf; - size_t m_off = 0; - -public: - explicit ReadBuffer(std::vector &&buf) : m_buf(std::move(buf)) {} - - template T getRawValue() { - T ret = {}; - getRawData(&ret, sizeof(ret)); - return ret; - } - - void getRawData(void *data, size_t len); - int32_t getInt32(); - int64_t getInt64(); - std::wstring getWString(); - void assertEof(); - - // MSVC 2013 does not generate these automatically, so help it out. - ReadBuffer(ReadBuffer &&other) : - m_buf(std::move(other.m_buf)), m_off(other.m_off) {} - ReadBuffer &operator=(ReadBuffer &&other) { - m_buf = std::move(other.m_buf); - m_off = other.m_off; - return *this; - } -}; - -#endif // WINPTY_SHARED_BUFFER_H