Index: third_party/pexpect/doc/api/pexpect.rst |
diff --git a/third_party/pexpect/doc/api/pexpect.rst b/third_party/pexpect/doc/api/pexpect.rst |
new file mode 100644 |
index 0000000000000000000000000000000000000000..79bbcefffc52a68f35579db252fcd012d6073789 |
--- /dev/null |
+++ b/third_party/pexpect/doc/api/pexpect.rst |
@@ -0,0 +1,115 @@ |
+Core pexpect components |
+======================= |
+ |
+.. automodule:: pexpect |
+ |
+spawn class |
+----------- |
+ |
+.. autoclass:: spawn |
+ |
+ .. automethod:: __init__ |
+ .. automethod:: expect |
+ .. automethod:: expect_exact |
+ .. automethod:: expect_list |
+ .. automethod:: compile_pattern_list |
+ .. automethod:: send |
+ .. automethod:: sendline |
+ .. automethod:: write |
+ .. automethod:: writelines |
+ .. automethod:: sendcontrol |
+ .. automethod:: sendeof |
+ .. automethod:: sendintr |
+ .. automethod:: read |
+ .. automethod:: readline |
+ .. automethod:: read_nonblocking |
+ .. automethod:: eof |
+ .. automethod:: interact |
+ |
+ .. attribute:: logfile |
+ logfile_read |
+ logfile_send |
+ |
+ Set these to a Python file object (or :data:`sys.stdout`) to log all |
+ communication, data read from the child process, or data sent to the child |
+ process. |
+ |
+ .. note:: |
+ |
+ With :class:`spawn` in bytes mode, the log files should be open for |
+ writing binary data. In unicode mode, they should |
+ be open for writing unicode text. See :ref:`unicode`. |
+ |
+Controlling the child process |
+````````````````````````````` |
+ |
+.. class:: spawn |
+ |
+ .. automethod:: kill |
+ .. automethod:: terminate |
+ .. automethod:: isalive |
+ .. automethod:: wait |
+ .. automethod:: close |
+ .. automethod:: getwinsize |
+ .. automethod:: setwinsize |
+ .. automethod:: getecho |
+ .. automethod:: setecho |
+ .. automethod:: waitnoecho |
+ |
+ .. attribute:: pid |
+ |
+ The process ID of the child process. |
+ |
+ .. attribute:: child_fd |
+ |
+ The file descriptor used to communicate with the child process. |
+ |
+.. _unicode: |
+ |
+Handling unicode |
+```````````````` |
+ |
+By default, :class:`spawn` is a bytes interface: its read methods return bytes, |
+and its write/send and expect methods expect bytes. If you pass the *encoding* |
+parameter to the constructor, it will instead act as a unicode interface: |
+strings you send will be encoded using that encoding, and bytes received will |
+be decoded before returning them to you. In this mode, patterns for |
+:meth:`~spawn.expect` and :meth:`~spawn.expect_exact` should also be unicode. |
+ |
+.. versionchanged:: 4.0 |
+ |
+ :class:`spawn` provides both the bytes and unicode interfaces. In Pexpect |
+ 3.x, the unicode interface was provided by a separate ``spawnu`` class. |
+ |
+For backwards compatibility, some Unicode is allowed in bytes mode: the |
+send methods will encode arbitrary unicode as UTF-8 before sending it to the |
+child process, and its expect methods can accept ascii-only unicode strings. |
+ |
+.. note:: |
+ |
+ Unicode handling with pexpect works the same way on Python 2 and 3, despite |
+ the difference in names. I.e.: |
+ |
+ - Bytes mode works with ``str`` on Python 2, and :class:`bytes` on Python 3, |
+ - Unicode mode works with ``unicode`` on Python 2, and :class:`str` on Python 3. |
+ |
+run function |
+------------ |
+ |
+.. autofunction:: run |
+ |
+Exceptions |
+---------- |
+ |
+.. autoclass:: EOF |
+ |
+.. autoclass:: TIMEOUT |
+ |
+.. autoclass:: ExceptionPexpect |
+ |
+Utility functions |
+----------------- |
+ |
+.. autofunction:: which |
+ |
+.. autofunction:: split_command_line |