'Returns an indication of the class of the operand.
The class is one of the following strings:
-sNaN
-NaN
-Infinity
-Normal
-Subnormal
-Zero
+Zero
+Subnormal
+Normal
+Infinity
>>> c = Context(ExtendedContext)
>>> c.Emin = -999
>>> c.Emax = 999
>>> c.number_class(Decimal(\'Infinity\'))
\'+Infinity\'
>>> c.number_class(Decimal(\'1E-10\'))
\'+Normal\'
>>> c.number_class(Decimal(\'2.50\'))
\'+Normal\'
>>> c.number_class(Decimal(\'0.1E-999\'))
\'+Subnormal\'
>>> c.number_class(Decimal(\'0\'))
\'+Zero\'
>>> c.number_class(Decimal(\'-0\'))
\'-Zero\'
>>> c.number_class(Decimal(\'-0.1E-999\'))
\'-Subnormal\'
>>> c.number_class(Decimal(\'-1E-10\'))
\'-Normal\'
>>> c.number_class(Decimal(\'-2.50\'))
\'-Normal\'
>>> c.number_class(Decimal(\'-Infinity\'))
\'-Infinity\'
>>> c.number_class(Decimal(\'NaN\'))
\'NaN\'
>>> c.number_class(Decimal(\'-NaN\'))
\'NaN\'
>>> c.number_class(Decimal(\'sNaN\'))
\'sNaN\'
>>> c.number_class(123)
\'+Normal\''

def number_class(self, a):

    a = _convert_other(a, raiseit=True)
    return a.number_class(context=self)
