class_docstr: Base layer class.
  
  It is considered legacy, and we recommend the use of `tf.keras.layers.Layer`
  instead.
  
  Args:
    trainable: Boolean, whether the layer's variables should be trainable.
    name: String name of the layer.
    dtype: Default dtype of the layer's weights (default of `None` means use the
      type of the first input).
  
  Read-only properties:
    name: The name of the layer (string).
    dtype: Default dtype of the layer's weights (default of `None` means use the
      type of the first input).
    trainable_variables: List of trainable variables.
    non_trainable_variables: List of non-trainable variables.
    variables: List of all variables of this layer, trainable and
      non-trainable.
    updates: List of update ops of this layer.
    losses: List of losses added by this layer.
    trainable_weights: List of variables to be included in backprop.
    non_trainable_weights: List of variables that should not be
      included in backprop.
    weights: The concatenation of the lists trainable_weights and
      non_trainable_weights (in this order).
  
  Mutable properties:
    trainable: Whether the layer should be trained (boolean).
    input_spec: Optional (list of) `InputSpec` object(s) specifying the
      constraints on inputs that can be accepted by the layer.
class_docstr_tok: ["Base","layer","class",".","It","is","considered","legacy",",","and","we","recommend","the","use","of","`","tf.keras.layers.Layer","`","instead",".","Args",":","trainable",":","Boolean",",","whether","the","layer","'s","variables","should","be","trainable",".","name",":","String","name","of","the","layer",".","dtype",":","Default","dtype","of","the","layer","'s","weights","(","default","of","`","None","`","means","use","the","type","of","the","first","input",")",".","Read-only","properties",":","name",":","The","name","of","the","layer","(","string",")",".","dtype",":","Default","dtype","of","the","layer","'s","weights","(","default","of","`","None","`","means","use","the","type","of","the","first","input",")",".","trainable_variables",":","List","of","trainable","variables",".","non_trainable_variables",":","List","of","non-trainable","variables",".","variables",":","List","of","all","variables","of","this","layer",",","trainable","and","non-trainable",".","updates",":","List","of","update","ops","of","this","layer",".","losses",":","List","of","losses","added","by","this","layer",".","trainable_weights",":","List","of","variables","to","be","included","in","backprop",".","non_trainable_weights",":","List","of","variables","that","should","not","be","included","in","backprop",".","weights",":","The","concatenation","of","the","lists","trainable_weights","and","non_trainable_weights","(","in","this","order",")",".","Mutable","properties",":","trainable",":","Whether","the","layer","should","be","trained","(","boolean",")",".","input_spec",":","Optional","(","list","of",")","`","InputSpec","`","object","(","s",")","specifying","the","constraints","on","inputs","that","can","be","accepted","by","the","layer","."]
code: def scope_name(self):
      if not self._scope:
          raise ValueError(
              'No name available for layer scope because the layer "'
              + self._name
              + '" has not been used yet. The scope name '
              + " is determined the first time the layer instance is "
              + "called. You must therefore call the layer before "
              + "querying `scope_name`."
          )
      return self._scope.name
  
imports: import copy
  import warnings
  from tensorflow.python.eager import context
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.keras import backend
  from tensorflow.python.keras.engine import base_layer
  from tensorflow.python.keras.engine import base_layer_utils
  from tensorflow.python.keras.legacy_tf_layers import variable_scope_shim
  from tensorflow.python.keras.mixed_precision import policy
  from tensorflow.python.keras.utils import tf_contextlib
  from tensorflow.python.ops import variable_scope
  from tensorflow.python.ops import variables
  from tensorflow.python.trackable import base
  from tensorflow.python.util import nest
label_desc: Use image node_id 5 for calling the Layer obj's underlying member method code with example usage: obj.scope_name() and returns: self