code: public List<TypeInfo> getTypeInfo() throws SQLException {
          final List<TypeInfo> list = new ArrayList<>();
          try (ResultSet results = databaseMetadata.getTypeInfo()) {
              if (results != null) {
                  bind(results, TypeInfo.class, list);
              }
          }
          return list;
      }
docs: Invokes {@link DatabaseMetaData#getTypeInfo()} and returns bound information.
  
  @return a list of type info
  @throws SQLException if a database error occurs.