code: def describe(self, name=str(), **options):
          
          metadata = {
              'address': self.index.address,
              'alignment': list(self.alignment),
              'class': self.name,
              'order': self.byte_order.value,
              'index': [self.index.byte, self.index.bit],
              'name': name if name else self.name,
              'size': self.bit_size,
              'type': Field.item_type.name,
              'value': self.value
          }
          return OrderedDict(sorted(metadata.items()))
docs: Returns the **metadata** of a `Field` as an
          :class:`ordered dictionary <collections.OrderedDict>`.
  
          .. code-block:: python
  
              metadata = {
                  'address': self.index.address,
                  'alignment': [self.alignment.byte_size, self.alignment.bit_offset],
                  'class': self.name,
                  'index': [self.index.byte, self.index.bit],
                  'name': name if name else self.name,
                  'order': self.byte_order.value,
                  'size': self.bit_size,
                  'type': Field.item_type.name,
                  'value': self.value
              }
  
          :param str name: optional name for the `Field`.
              Fallback is the class name.
          :keyword bool nested: if ``True`` a :class:`Pointer` field lists its
              referenced :attr:`~Pointer.data` object fields as well
              (chained method call). Default is ``True``.