<commit_before>module Domgen
  module Ruby
    class RubyAttribute < BaseParentedElement
    end

    class RubyClass < Domgen.ParentedElement(:object_type)
      attr_writer :classname
      attr_reader :included_modules

      def include_module(module_name)
        (@included_modules ||= []) << module_name
      end

      def classname
        @classname || object_type.name
      end

      def qualified_name
        "::#{object_type.data_module.ruby.module_name}::#{classname}"
      end

      def filename
        fqn = qualified_name
        underscore(fqn[2..fqn.length])
      end
    end

    class RubyModule < Domgen.ParentedElement(:data_module)
      attr_writer :module_name

      def module_name
        @module_name || data_module.name
      end
    end
  end

  Attribute.add_extension(:ruby, Domgen::Ruby::RubyAttribute)
  ObjectType.add_extension(:ruby, Domgen::Ruby::RubyClass)
  DataModule.add_extension(:ruby, Domgen::Ruby::RubyModule)
end
<commit_msg>Remove empty RubyAttribute extension class<commit_after>module Domgen
  module Ruby
    class RubyClass < Domgen.ParentedElement(:object_type)
      attr_writer :classname
      attr_reader :included_modules

      def include_module(module_name)
        (@included_modules ||= []) << module_name
      end

      def classname
        @classname || object_type.name
      end

      def qualified_name
        "::#{object_type.data_module.ruby.module_name}::#{classname}"
      end

      def filename
        fqn = qualified_name
        underscore(fqn[2..fqn.length])
      end
    end

    class RubyModule < Domgen.ParentedElement(:data_module)
      attr_writer :module_name

      def module_name
        @module_name || data_module.name
      end
    end
  end

  ObjectType.add_extension(:ruby, Domgen::Ruby::RubyClass)
  DataModule.add_extension(:ruby, Domgen::Ruby::RubyModule)
end

{'fraction_non_alphanumeric': 0.08751334044823907, 'fraction_numerical': 0.0010672358591248667, 'mean_word_length': 2.939075630252101, 'pattern_counts': {'":': 2, '<': 12, '<?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': '4193287', 'n_tokens_mistral': 601, 'n_tokens_neox': 550, 'n_words': 108}