mirror of
https://fuchsia.googlesource.com/third_party/github.com/pylint-dev/pylint
synced 2024-09-21 16:19:21 +00:00
31 lines
981 B
Python
31 lines
981 B
Python
# Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
# For details: https://github.com/PyCQA/pylint/blob/main/LICENSE
|
|
# Copyright (c) https://github.com/PyCQA/pylint/blob/main/CONTRIBUTORS.txt
|
|
|
|
"""Arguments provider class used to expose options."""
|
|
|
|
|
|
from typing import Dict
|
|
|
|
from pylint.config.arguments_manager import _ArgumentsManager
|
|
from pylint.typing import Options
|
|
|
|
|
|
class _ArgumentsProvider:
|
|
"""Base class for classes that provide arguments."""
|
|
|
|
name: str
|
|
"""Name of the provider."""
|
|
|
|
options: Options = ()
|
|
"""Options provided by this provider."""
|
|
|
|
option_groups_descs: Dict[str, str] = {}
|
|
"""Option groups of this provider and their descriptions."""
|
|
|
|
def __init__(self, arguments_manager: _ArgumentsManager) -> None:
|
|
self._arguments_manager = arguments_manager
|
|
"""The manager that will parse and register any options provided."""
|
|
|
|
self._arguments_manager._register_options_provider(self)
|