def _get_processor()

in tensorflow_recommenders_addons/dynamic_embedding/python/ops/tf_patch.py [0:0]


def _get_processor(v):
  """The processor of v."""
  if isinstance(v, de.TrainableWrapper):
    return _DenseDynamicEmbeddingTrainableProcessor(v)
  if context.executing_eagerly():
    if isinstance(v, ops.Tensor):
      return optimizer._TensorProcessor(v)
    else:
      return optimizer._DenseResourceVariableProcessor(v)
  if (rvo.is_resource_variable(v) and not v._in_graph_mode):  # pylint: disable=protected-access
    # True if and only if `v` was initialized eagerly.
    return optimizer._DenseResourceVariableProcessor(v)
  if isinstance(v, ev.EmbeddingVariable):
    return optimizer._DenseResourceVariableProcessor(v)
  if v.op.type == "VarHandleOp":
    return optimizer._DenseResourceVariableProcessor(v)
  if isinstance(v, variables.Variable):
    return optimizer._RefVariableProcessor(v)
  if isinstance(v, ops.Tensor):
    return optimizer._TensorProcessor(v)
  raise NotImplementedError("Trying to optimize unsupported type ", v)