<commit_before>package de.lmu.ifi.dbs.data;

/**
 * To be a database object is the least requirement for an object to apply
 * distance based approaches. <p/>
 * Any implementing class should ensure to have a proper distance function
 * provided, that can handle the respective class.
 *
 * @author <NAME> (<a
 *         href="mailto:<EMAIL>"><EMAIL></a>)
 */
public interface DatabaseObject<O extends DatabaseObject> {
  /**
   * Equality of DatabaseObject should be defined by their values
   * regardless of their id.
   *
   * @param obj another DatabaseObject
   * @return true if all values of both DatabaseObjects are equal, false otherwise
   */
  abstract boolean equals(Object obj);

  /**
   * Returns the unique id of this database object.
   *
   * @return the unique id of this database object
   */
  Integer getID();

  /**
   * Sets the id of this database object. The id must be unique within one
   * database.
   *
   * @param id the id to be set
   */
  void setID(Integer id);

  /**
   * Provides a deep copy of this object.
   *
   * @return a copy of this object
   */
  O copy();
}<commit_msg>renamed: MetricalObject -> DatabaseObject<commit_after>package de.lmu.ifi.dbs.data;

/**
 * To be a database object is the least requirement for an object to apply
 * distance based approaches. <p/>
 * Any implementing class should ensure to have a proper distance function
 * provided, that can handle the respective class.
 *
 * @author <NAME> (<a
 *         href="mailto:<EMAIL>"><EMAIL></a>)
 */
public interface DatabaseObject<O extends DatabaseObject> {
  /**
   * Equality of DatabaseObject should be defined by their values
   * regardless of their id.
   *
   * @param obj another DatabaseObject
   * @return true if all values of both DatabaseObjects are equal, false otherwise
   */
  abstract boolean equals(Object obj);

  /**
   * Returns the unique id of this database object.
   *
   * @return the unique id of this database object
   */
  Integer getID();

  /**
   * Sets the id of this database object. The id must be unique within one
   * database.
   *
   * @param id the id to be set
   */
  void setID(Integer id);

  /**
   * Provides a copy of this database object. All values of the database object
   * will be copied, except the id.
   *
   * @return a copy of this object
   */
  O copy();
}
{'fraction_non_alphanumeric': 0.09316239316239316, 'fraction_numerical': 0.0, 'mean_word_length': 2.9278523489932886, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 18, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3822447', 'n_tokens_mistral': 658, 'n_tokens_neox': 648, 'n_words': 290}