numericLiteral: INTEGER | DECIMAL | DOUBLE

def numeric_literal_to_type(numlit: ShExDocParser.NumericLiteralContext) -> Union[jsg.Integer, jsg.Number]:
        """ numericLiteral: INTEGER | DECIMAL | DOUBLE """
        if numlit.INTEGER():
            rval = jsg.Integer(str(int(numlit.INTEGER().getText())))
        elif numlit.DECIMAL():
            rval = jsg.Number(str(float(numlit.DECIMAL().getText())))
        else:
            rval = jsg.Number(str(float(numlit.DOUBLE().getText())))
        return rval