class_docstr: Second phase of decoder layer block
      Each layer will be of type TransformerDecoderLayerPhase2
  Args:
      args (argparse.Namespace): parsed command-line arguments
      dictionary (~fairseq.data.Dictionary): encoding dictionary
      embed_tokens (torch.nn.Embedding): input embedding
      no_encoder_decoder_attn: If encoder decoder attention is required or not
code: def buffered_future_mask(self, tensor):
      dim = tensor.size(0)
      if (
          not hasattr(self, "_future_mask")
          or self._future_mask is None
          or self._future_mask.device != tensor.device
      ):
          self._future_mask = torch.triu(
              utils.fill_with_neg_inf(tensor.new(dim, dim)), 1
          )
      if self._future_mask.size(0) < dim:
          self._future_mask = torch.triu(
              utils.fill_with_neg_inf(
                  self._future_mask.resize_(dim, dim)
              ),
              1,
          )
      return self._future_mask[:dim, :dim]
  
imports: import math
  import torch
  import torch.nn
  import torch.nn.functional
  from fairseq import options, utils
  from fairseq.models import FairseqEncoderDecoderModel, FairseqIncrementalDecoder, register_model, register_model_architecture
  from fairseq.models.transformer import Embedding, Linear, TransformerDecoder, TransformerEncoder
  from fairseq.modules import AdaptiveSoftmax, LayerNorm, MultiheadAttention, PositionalEmbedding, SinusoidalPositionalEmbedding
label_desc: Use image node_id 6 for calling the TransformerDecoderPhase2 obj's underlying member method code with example usage: obj.buffered_future_mask(tensor) and returns: self