AnalyzerManager

duetector.managers.analyzer.PROJECT_NAME = 'duetector.analyzer'

Default project name for pluggy

duetector.managers.analyzer.init_analyzer(config) Analyzer | None[source]

Initialize analyzer from config None means the analyzer is not available Also the analyzer can be disabled by config, Manager will discard disabled analyzer

class duetector.managers.analyzer.AnalyzerManager(config: dict[str, Any] | None = None, *args, **kwargs)[source]

Bases: Manager

Manager for all analyzers.

Analyzers are initialized from config, and can be disabled by config.

config_scope: str | None = 'analyzer'

Config scope for AnalyzerManager.

default_config = {'disabled': False, 'include_extension': True}

Default config for Manager

property disabled

If current manager is disabled.

property include_extension

If include extensions

init(analyzer_type=<class 'duetector.analyzer.base.Analyzer'>, ignore_disabled=True, *args, **kwargs) list[Analyzer][source]

Initialize all analyzers from config.

Parameters:
  • analyzer_type – Only return analyzers of this type

  • ignore_disabled – Ignore disabled analyzers

pm: PluginManager

PluginManager instance

register(subpackage)

Register subpackage to plugin manager