class_docstr: A wrapper class that wraps the input module, adds QuantStub and
  DeQuantStub and surround the call to module with call to quant and dequant
  modules.
  
  This is used by the `quantization` utility functions to add the quant and
  dequant modules, before `convert` function `QuantStub` will just be observer,
  it observes the input tensor, after `convert`, `QuantStub`
  will be swapped to `nnq.Quantize` which does actual quantization. Similarly
  for `DeQuantStub`.
class_docstr_tok: ["A","wrapper","class","that","wraps","the","input","module",",","adds","QuantStub","and","DeQuantStub","and","surround","the","call","to","module","with","call","to","quant","and","dequant","modules",".","This","is","used","by","the","`","quantization","`","utility","functions","to","add","the","quant","and","dequant","modules",",","before","`","convert","`","function","`","QuantStub","`","will","just","be","observer",",","it","observes","the","input","tensor",",","after","`","convert","`",",","`","QuantStub","`","will","be","swapped","to","`","nnq.Quantize","`","which","does","actual","quantization",".","Similarly","for","`","DeQuantStub","`","."]
code: def forward(self, X):
      X = self.quant(X)
      X = self.module(X)
      return self.dequant(X)
  
file_path: pytorch/torch/ao/quantization/stubs.py
imports: from torch import nn
label_desc: Use image node_id 2 for calling the QuantWrapper obj's underlying member method code with example usage: obj.forward(X) and returns: self