summaryrefslogtreecommitdiff
path: root/docs/source/internal/cli.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/source/internal/cli.rst')
-rw-r--r--docs/source/internal/cli.rst26
1 files changed, 26 insertions, 0 deletions
diff --git a/docs/source/internal/cli.rst b/docs/source/internal/cli.rst
new file mode 100644
index 0000000..f203125
--- /dev/null
+++ b/docs/source/internal/cli.rst
@@ -0,0 +1,26 @@
+Command Line Interface
+======================
+
+The command line interface of |Flake8| is modeled as an application via
+:class:`~flake8.main.cli.Application`. When a user runs ``flake8`` at their
+command line, :func:`~flake8.main.cli.main` is run which handles
+management of the application.
+
+User input is parsed *twice* to accomodate logging and verbosity options
+passed by the user as early as possible.
+This is so as much logging can be produced as possible.
+
+The default |Flake8| options are registered by
+:func:`~flake8.main.options.register_default_options`. Trying to register
+these options in plugins will result in errors.
+
+
+API Documentation
+-----------------
+
+.. autofunction:: flake8.main.cli.main
+
+.. autoclass:: flake8.main.application.Application
+ :members:
+
+.. autofunction:: flake8.main.options.register_default_options