class_docstr:     The base class for rnn tree decoder
  
  Parameters
  ----------
  attentional: bool, default=True
      Whether to use attention mechanism
  use_copy: bool, default=False
      Whether to use copy attention(pointer network) mechanism
  use_coverage: bool, default=False
      Whether to use coverage attention mechanism
  attention_type: str, option=["uniform", "separate"], default="uniform"
      The attention strategy choice.
      "``uniform``": uniform attention. We will attend on the nodes uniformly.
      "``separate_different_encoder_type``": separate attention.
                                             We will attend on different encoder results separately. # noqa
      "``separate_different_node_type``": separate attention.
                                          We will attend on different node type separately.
  
  fuse_strategy: str, option=[None, "average", "concatenate"], default=None
      The strategy to fuse attention results generated by separate attention.
      "None": If we do ``uniform`` attention, we will set it to None.
      "``average``": We will take an average on all results.
      "``concatenate``": We will concatenate all results to one.
  teacher_forcing_ratio: float, default=1.
      The probability rate to use teacher forcing strategy.
docstr:     The private calculation method for decoder.
  
  Parameters
  ----------
  tgt: torch.Tensor,
      TODO: add tree decode batch data description
  graph_node_embedding: torch.Tensor,
      The graph node embedding matrix of shape :math:`(B, N, D_{in})`
  graph_node_mask: torch.Tensor,
      The graph node type mask matrix of shape :math`(B, N)`
  rnn_node_embedding: torch.Tensor,
      The rnn encoded embedding matrix of shape :math`(B, N, D_{in})`
  graph_level_embedding: torch.Tensor,
      graph level embedding of shape :math`(B, D_{in})`
  graph_edge_embedding: torch.Tensor,
      graph edge embedding of shape :math`(B, N, D_{in})`
  graph_edge_mask: torch.Tensor,
      graph edge type embedding
  
  Returns
  ----------
  logits: torch.Tensor
  attns: torch.Tensor
docstr_tok: ["The","private","calculation","method","for","decoder",".","Parameters","--","--","--","--","--","tgt",":","torch.Tensor",",","TODO",":","add","tree","decode","batch","data","description","graph_node_embedding",":","torch.Tensor",",","The","graph","node","embedding","matrix","of","shape",":","math",":","`","(","B",",","N",",","D_","{","in","}",")","`","graph_node_mask",":","torch.Tensor",",","The","graph","node","type","mask","matrix","of","shape",":","math","`","(","B",",","N",")","`","rnn_node_embedding",":","torch.Tensor",",","The","rnn","encoded","embedding","matrix","of","shape",":","math","`","(","B",",","N",",","D_","{","in","}",")","`","graph_level_embedding",":","torch.Tensor",",","graph","level","embedding","of","shape",":","math","`","(","B",",","D_","{","in","}",")","`","graph_edge_embedding",":","torch.Tensor",",","graph","edge","embedding","of","shape",":","math","`","(","B",",","N",",","D_","{","in","}",")","`","graph_edge_mask",":","torch.Tensor",",","graph","edge","type","embedding","Returns","--","--","--","--","--","logits",":","torch.Tensor","attns",":","torch.Tensor"]
code: def _run_forward_pass(
      self,
      graph_node_embedding,
      graph_node_mask,
      rnn_node_embedding,
      graph_level_embedding,
      graph_edge_embedding=None,
      graph_edge_mask=None,
      tgt=None,
      enc_batch=None,
  ):
      r"""
          The private calculation method for decoder.
  
      Parameters
      ----------
      tgt: torch.Tensor,
          TODO: add tree decode batch data description
      graph_node_embedding: torch.Tensor,
          The graph node embedding matrix of shape :math:`(B, N, D_{in})`
      graph_node_mask: torch.Tensor,
          The graph node type mask matrix of shape :math`(B, N)`
      rnn_node_embedding: torch.Tensor,
          The rnn encoded embedding matrix of shape :math`(B, N, D_{in})`
      graph_level_embedding: torch.Tensor,
          graph level embedding of shape :math`(B, D_{in})`
      graph_edge_embedding: torch.Tensor,
          graph edge embedding of shape :math`(B, N, D_{in})`
      graph_edge_mask: torch.Tensor,
          graph edge type embedding
  
      Returns
      ----------
      logits: torch.Tensor
      attns: torch.Tensor
      """
      raise NotImplementedError()
  
imports: import torch.nn
label_desc: Use image node_id 4 for calling the RNNTreeDecoderBase obj's underlying member method code with example usage: obj._run_forward_pass(graph_node_embedding, graph_node_mask, rnn_node_embedding, graph_level_embedding, graph_edge_embedding, graph_edge_mask, tgt, enc_batch) without return types