<commit_before># Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"). You
# may not use this file except in compliance with the License. A copy of
# the License is located at
#
#     http://aws.amazon.com/apache2.0/
#
# or in the "license" file accompanying this file. This file is
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
# ANY KIND, either express or implied. See the License for the specific
# language governing permissions and limitations under the License.

module Aws
  class Service

    def initialize(options = {})
      @client = self.class.const_get(:Client).new(options)
    end

    # @return [Seahorse::Base::Client]
    attr_reader :client

    # @api private
    def inspect
      "#<#{self.class.name}>"
    end

    class << self

      # @api private
      attr_accessor :method_name

      # @api private
      def define(method_name, apis = [])
        klass = Class.new(self)
        klass.method_name = method_name
        klass.const_set(:Client, ClientFactory.define(method_name, apis))
        klass
      end

    end
  end
end<commit_msg>Documented the class methods on Aws::Service.<commit_after># Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"). You
# may not use this file except in compliance with the License. A copy of
# the License is located at
#
#     http://aws.amazon.com/apache2.0/
#
# or in the "license" file accompanying this file. This file is
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
# ANY KIND, either express or implied. See the License for the specific
# language governing permissions and limitations under the License.

module Aws
  class Service

    def initialize(options = {})
      @client = self.class.const_get(:Client).new(options)
    end

    # @return [Seahorse::Base::Client]
    attr_reader :client

    # @api private
    def inspect
      "#<#{self.class.name}>"
    end

    class << self

      # @return [Symbol]
      attr_accessor :method_name

      # @param [Symbol] method_name The underscored short name for this service.
      # @param [Array<Api, String>] An array of client APIs for this service.
      #   Values may be string paths to API files or instances of
      #   `Seahorse::Model::Api`.
      # @return [Class<Service>]
      def define(method_name, apis = [])
        klass = Class.new(self)
        klass.method_name = method_name
        klass.const_set(:Client, ClientFactory.define(method_name, apis))
        klass
      end

    end
  end
end
{'fraction_non_alphanumeric': 0.09348230912476722, 'fraction_numerical': 0.008938547486033519, 'mean_word_length': 2.9792592592592593, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 7, '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': '6229551', 'n_tokens_mistral': 786, 'n_tokens_neox': 765, 'n_words': 287}