class_docstr: Construct a PassManager.
  
  Collects passes and constraints. This defines the pass schedule, manages
  pass constraints and pass execution.
  
  Args:
      passes (Optional[List[Callable]]): List of passes. A pass is a
          callable which modifies an object and returns a PassResult
      constraint (Optional[List[Callable]]): List of constraints. A
          constraint is a callable which takes two passes (A, B) and returns
          True if A depends on B and False otherwise. See implementation of
          `this_before_that_pass_constraint` for example.
      steps (int): Max number of times we run the passes (default = 1).
      run_checks_after_each_pass (bool): Whether to run checks and linting
          after each pass
      suppress_check_failures (bool): Whether to raise errors when running
          checks
docstr: Adds a constraint into the current list of constraints.
docstr_tok: ["Adds","a","constraint","into","the","current","list","of","constraints","."]
code: def add_constraint(self, constraint: Callable):
      """
      Adds a constraint into the current list of constraints.
      """
      self.constraints.append(constraint)
      self._validated = False
  
imports: import inspect
  import logging
  from queue import Queue
  from functools import wraps
  from typing import Callable, Dict, List
  import torch.nn
  from torch.fx.graph_module import GraphModule
  from torch.fx._compatibility import compatibility
  from torch.fx.passes.infra.pass_base import PassResult
label_desc: Use image node_id 3 for calling the PassManager obj's underlying member method code with example usage: obj.add_constraint(constraint) without return types