# Path: PyDevRemoteDebug/ptvsd-4.1.3/ptvsd/socket.py
# class TimeoutError(socket.timeout):
#     """A socket timeout happened."""
# 
# @contextlib.contextmanager
# def convert_eof():
#     """A context manager to convert some socket errors into EOFError."""
#     try:
#         yield
#     except ConnectionResetError:
#         raise EOFError
#     except BrokenPipeError:
#         raise EOFError
#     except OSError as exc:
#         if exc.errno in EOF:
#             raise EOFError
#         raise


import errno
import itertools
import json
import os
import os.path
import sys
import time
import traceback
            import thread
            import _thread as thread
from socket import create_connection
from .socket import TimeoutError, convert_eof
    from encodings import ascii

﻿# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See LICENSE in the project root
# for license information.

from __future__ import print_function, with_statement, absolute_import

# This module MUST NOT import threading in global scope. This is because
# in a direct (non-ptvsd) attach scenario, it is loaded on the injected
# debugger attach thread, and if threading module hasn't been loaded
# already, it will assume that the thread on which it is being loaded is
# the main thread. This will cause issues when the thread goes away
# after attach completes.




_TRACE = None

SKIP_TB_PREFIXES = [

# Path: PyDevRemoteDebug/ptvsd-4.1.3/ptvsd/socket.py
# class TimeoutError(socket.timeout):
#     """A socket timeout happened."""
# 
# @contextlib.contextmanager
# def convert_eof():
#     """A context manager to convert some socket errors into EOFError."""
#     try:
#         yield
#     except ConnectionResetError:
#         raise EOFError
#     except BrokenPipeError:
#         raise EOFError
#     except OSError as exc:
#         if exc.errno in EOF:
#             raise EOFError
#         raise


# Path: PyDevRemoteDebug/ptvsd-4.1.3/ptvsd/ipcjson.py
import errno
import itertools
import json
import os
import os.path
import sys
import time
import traceback
            import thread
            import _thread as thread
from socket import create_connection
from .socket import TimeoutError, convert_eof
    from encodings import ascii

﻿# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See LICENSE in the project root
# for license information.

from __future__ import print_function, with_statement, absolute_import

# This module MUST NOT import threading in global scope. This is because
# in a direct (non-ptvsd) attach scenario, it is loaded on the injected
# debugger attach thread, and if threading module hasn't been loaded
# already, it will assume that the thread on which it is being loaded is
# the main thread. This will cause issues when the thread goes away
# after attach completes.




_TRACE = None

SKIP_TB_PREFIXES = [

    os.path.normcase(
