<commit_before>require 'attrocity/version'
require 'attrocity/attribute'
require 'attrocity/attribute_methods_builder'
require 'attrocity/attribute_set'
require 'attrocity/attributes_hash'
require 'attrocity/model'
require 'attrocity/model_attribute'
require 'attrocity/model_attribute_set'
require 'attrocity/builders/model_builder'
require 'attrocity/builders/module_builder'
require 'attrocity/coercer_registry'
require 'attrocity/coercers/boolean'
require 'attrocity/coercers/integer'
require 'attrocity/coercers/string'

module Attrocity

  def self.model
    ModelBuilder.new
  end

  def self.module
    ModuleBuilder.new
  end

  # TODO: This should probably be an instance method on obj
  def self.perform_attributes_actions(obj)
    obj.attribute_set.set_values(obj, obj.raw_data)
    obj.attribute_set.define_methods(obj)
  end

  def self.perform_model_attributes_actions(obj)
    # define method(s) for model attributes<commit_msg>[TS/TC][000000] Remove more unused code<commit_after>require 'attrocity/version'
require 'attrocity/attribute'
require 'attrocity/attribute_methods_builder'
require 'attrocity/attribute_set'
require 'attrocity/attributes_hash'
require 'attrocity/model'
require 'attrocity/model_attribute'
require 'attrocity/model_attribute_set'
require 'attrocity/builders/model_builder'
require 'attrocity/builders/module_builder'
require 'attrocity/coercer_registry'
require 'attrocity/coercers/boolean'
require 'attrocity/coercers/integer'
require 'attrocity/coercers/string'

module Attrocity

  def self.model
    ModelBuilder.new
  end

  def self.module
    ModuleBuilder.new
  end

  # TODO: This should probably be an instance method on obj
  def self.perform_attributes_actions(obj)
    obj.attribute_set.set_values(obj, obj.raw_data)
    obj.attribute_set.define_methods(obj)
{'fraction_non_alphanumeric': 0.08213891951488424, 'fraction_numerical': 0.0033076074972436605, 'mean_word_length': 6.173913043478261, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, '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': '1726978', 'n_tokens_mistral': 592, 'n_tokens_neox': 578, 'n_words': 117}