class_docstr: Character-level CNN encoder to generate word representations, as input to
  transformer encoder.
code: def reorder_encoder_out(self, encoder_out, new_order):
      (x, src_tokens, encoder_padding_mask) = encoder_out
      if x is not None:
          x = x.index_select(1, new_order)
      if src_tokens is not None:
          src_tokens = src_tokens.index_select(0, new_order)
      if encoder_padding_mask is not None:
          encoder_padding_mask = encoder_padding_mask.index_select(
              0, new_order
          )
      return (x, src_tokens, encoder_padding_mask)
  
imports: import logging
  import math
  from ast import literal_eval
  import torch
  import torch.nn
  import torch.nn.functional
  from fairseq.models import FairseqEncoder, register_model, register_model_architecture, transformer
  from fairseq.modules import SinusoidalPositionalEmbedding
  from pytorch_translate import char_encoder, char_source_model, hybrid_transformer_rnn, model_constants, rnn, transformer, utils, vocab_constants
  from pytorch_translate.common_layers import TransformerEncoderGivenEmbeddings, VariableTracker
  from pytorch_translate.data.dictionary import TAGS
label_desc: Use image node_id 6 for calling the CharCNNEncoder obj's underlying member method code with example usage: obj.reorder_encoder_out(encoder_out, new_order) and returns: x,  src_tokens,  encoder_padding_mask