telemetry.core.discover | index telemetry/core/discover.py

`# Copyright 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.`

Modules
`` |  |
telemetry.internal.util.camel_case telemetry.internal.util.classes | telemetry.decorators fnmatch | inspect os | re

Functions
`` |  | DiscoverClasses(*args, **kwargs) `Discover all classes in |start_dir| which subclass |base_class|. Base classes that contain subclasses are ignored by default. Args: start_dir: The directory to recursively search. top_level_dir: The top level of the package, for importing. base_class: The base class to search for. pattern: Unix shell-style pattern for filtering the filenames to import. index_by_class_name: If True, use class name converted to lowercase_with_underscores instead of module name in return dict keys. directly_constructable: If True, will only return classes that can be constructed without arguments Returns: dict of {module_name: class} or {underscored_class_name: class}` DiscoverClassesInModule(*args, **kwargs) `Discover all classes in |module| which subclass |base_class|. Base classes that contain subclasses are ignored by default. Args: module: The module to search. base_class: The base class to search for. index_by_class_name: If True, use class name converted to lowercase_with_underscores instead of module name in return dict keys. Returns: dict of {module_name: class} or {underscored_class_name: class}` DiscoverModules(*args, **kwargs) `Discover all modules in |start_dir| which match |pattern|. Args: start_dir: The directory to recursively search. top_level_dir: The top level of the package, for importing. pattern: Unix shell-style pattern for filtering the filenames to import. Returns: list of modules.`