class_docstr: A Term that should be computed from a tuple of inputs.
  
  This is the base class for :class:`zipline.pipeline.Factor`,
  :class:`zipline.pipeline.Filter`, and :class:`zipline.pipeline.Classifier`.
class_docstr_tok: ["A","Term","that","should","be","computed","from","a","tuple","of","inputs",".","This","is","the","base","class","for",":","class",":","`","zipline.pipeline.Factor","`",",",":","class",":","`","zipline.pipeline.Filter","`",",","and",":","class",":","`","zipline.pipeline.Classifier","`","."]
docstr: Subclasses should implement this to perform actual computation.
  
  This is named ``_compute`` rather than just ``compute`` because
  ``compute`` is reserved for user-supplied functions in
  CustomFilter/CustomFactor/CustomClassifier.
docstr_tok: ["Subclasses","should","implement","this","to","perform","actual","computation",".","This","is","named","``","_compute","``","rather","than","just","``","compute","``","because","``","compute","``","is","reserved","for","user-supplied","functions","in","CustomFilter\/CustomFactor\/CustomClassifier","."]
code: def _compute(self, inputs, dates, assets, mask):
      """
      Subclasses should implement this to perform actual computation.
  
      This is named ``_compute`` rather than just ``compute`` because
      ``compute`` is reserved for user-supplied functions in
      CustomFilter/CustomFactor/CustomClassifier.
      """
      raise NotImplementedError("_compute")
  
imports: from abc import ABCMeta, abstractproperty, abstractmethod
  from bisect import insort
  from collections import Mapping
  from weakref import WeakValueDictionary
  from numpy import array, dtype, ndarray
  from six import with_metaclass
  from zipline.assets import Asset
  from zipline.errors import DTypeNotSpecified, InvalidOutputName, NonSliceableTerm, NonWindowSafeInput, NotDType, NonPipelineInputs, TermInputsNotSpecified, TermOutputsEmpty, UnsupportedDType, WindowLengthNotSpecified
  from zipline.lib.adjusted_array import can_represent_dtype
  from zipline.lib.labelarray import LabelArray
  from zipline.utils.input_validation import expect_types
  from zipline.utils.memoize import classlazyval, lazyval
  from zipline.utils.numpy_utils import bool_dtype, categorical_dtype, datetime64ns_dtype, default_missing_value_for_dtype, float64_dtype
  from zipline.utils.sharedoc import templated_docstring, PIPELINE_ALIAS_NAME_DOC, PIPELINE_DOWNSAMPLING_FREQUENCY_DOC
  from .domain import Domain, GENERIC, infer_domain
  from .downsample_helpers import expect_downsample_frequency
  from .sentinels import NotSpecified
label_desc: Use image node_id 5 for calling the ComputableTerm obj's underlying member method code with example usage: obj._compute(inputs, dates, assets, mask) without return types