<commit_before>package ORM::EnsEMBL::Rose::CustomColumn::DataStructure;

### Name: ORM::EnsEMBL::Rose::CustomColumn::DataStructure
### Class for column type 'datastructure' for saving a Hash or Array

### An extra boolean key 'trusted' is required (defaults to value being false) to initiate the column during AnyRoseObject->meta->setup (see &trusted below)

use strict;

use ORM::EnsEMBL::Rose::CustomColumnValue::DataStructure;

use base qw(
  ORM::EnsEMBL::Rose::CustomColumn
  Rose::DB::Object::Metadata::Column::Text
);

sub new {
  return shift->init_custom_column(@_);
}

sub allowed_base_classes {
  ## @overrides<commit_msg>modify the constructor to modify existing column to datastructure if existing column provided<commit_after>package ORM::EnsEMBL::Rose::CustomColumn::DataStructure;

### Name: ORM::EnsEMBL::Rose::CustomColumn::DataStructure
### Class for column type 'datastructure' for saving a Hash or Array

### An extra boolean key 'trusted' is required (defaults to value being false) to initiate the column during AnyRoseObject->meta->setup (see &trusted below)

use strict;

use ORM::EnsEMBL::Rose::CustomColumnValue::DataStructure;

use base qw(
  ORM::EnsEMBL::Rose::CustomColumn
  Rose::DB::Object::Metadata::Column::Text
);

sub new {
  ## Creates new from existing or from the given params
  my $class = shift;
  my $self  = $class->new_from_existing(@_) || $class->SUPER::new(@_);

  return $self->init_custom_column;
}

sub allowed_base_classes {
  ## @overrides
{'fraction_non_alphanumeric': 0.12743125419181758, 'fraction_numerical': 0.0, 'mean_word_length': 6.573604060913706, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 11, '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': '4503507', 'n_tokens_mistral': 476, 'n_tokens_neox': 454, 'n_words': 131}