docs: protected DataType parseApproxNumericType( DdlTokenStream tokens ) throws ParsingException {
          DataType dataType = null;
          String typeName = null;
  
          if (tokens.matches(DataTypes.DTYPE_REAL)) {
              dataType = new DataType();
              typeName = consume(tokens, dataType, false, DataTypes.DTYPE_REAL);
              dataType.setName(typeName);
          } else if (tokens.matches(DataTypes.DTYPE_DOUBLE_PRECISION)) {
              dataType = new DataType();
              typeName = consume(tokens, dataType, false, DataTypes.DTYPE_DOUBLE_PRECISION);
              dataType.setName(typeName);
          } else if (tokens.matches(DataTypes.DTYPE_FLOAT)) {
              dataType = new DataType();
              typeName = consume(tokens, dataType, false, DataTypes.DTYPE_FLOAT);
              dataType.setName(typeName);
              int precision = 0;
              if (tokens.matches(L_PAREN)) {
                  precision = (int)parseBracketedLong(tokens, dataType);
              }
              dataType.setPrecision(precision);
          }
  
          return dataType;
      }