Sets the alignment of the ``Decimal`` field.

        :param int group_size: size of the aligned `Field` group in bytes,
            can be between ``1`` and ``8``.
        :param int bit_offset: bit offset of the `Decimal` field within the
            aligned `Field` group, can be between ``0`` and ``63``.
        :param bool auto_align: if ``True`` the `Decimal` field aligns itself
            to the next matching byte size according to the *size* of the
            `Decimal` field.

def _set_alignment(self, group_size, bit_offset=0, auto_align=False):
        """ Sets the alignment of the ``Decimal`` field.

        :param int group_size: size of the aligned `Field` group in bytes,
            can be between ``1`` and ``8``.
        :param int bit_offset: bit offset of the `Decimal` field within the
            aligned `Field` group, can be between ``0`` and ``63``.
        :param bool auto_align: if ``True`` the `Decimal` field aligns itself
            to the next matching byte size according to the *size* of the
            `Decimal` field.
        """
        # Field alignment offset
        field_offset = int(bit_offset)

        # Auto alignment
        if auto_align:
            # Field alignment size
            field_size, bit_offset = divmod(field_offset, 8)
            if bit_offset is not 0:
                field_size += 1
            field_size = max(field_size, 1)
        # No auto alignment
        else:
            # Field alignment size
            field_size = int(group_size)

        # Field alignment
        alignment = Alignment(field_size, field_offset)

        # Invalid field alignment size
        if field_size not in range(1, 8):
            raise FieldAlignmentError(self, self.index, alignment)

        # Invalid field alignment offset
        if not (0 <= field_offset <= 63):
            raise FieldAlignmentError(self, self.index, alignment)

        # Invalid field alignment
        if field_offset >= field_size * 8:
            raise FieldAlignmentError(self, self.index, alignment)

        # Set field alignment
        self._align_to_byte_size = alignment.byte_size
        self._align_to_bit_offset = alignment.bit_offset