def source
      code = @gem_dependencies.map { |gem_name, _| "require '#{gem_name}'" }
      source_files.each.with_index do |(file_name, src_code), n|
        # skip the service module and customizations
        next if file_name.include? '/customizations.rb'
        next unless file_name.include? '/'
        # skip markdown files
        next if file_name.include? 'README.md'
        code << src_code
      end
      code.join("\n")
    end
def source
      code = @gem_dependencies.map { |gem_name, _| "require '#{gem_name}'" }
      source_files.each.with_index do |(file_name, src_code), n|
        # skip the service module and customizations
        next if file_name.include? '/customizations.rb'
        next unless file_name.include? '/'
        # skip markdown files
        next if file_name.include? 'README.md'
        code << src_code
      end
      code.join("\n")
    end
@option options [required, Service] :service

 @option options [required, String] :aws_sdk_core_lib_path
   Path to the lib directory for the source code of the
   AWS SDK for Ruby. This is needed so that documentation
   can be generated for default plugins and their options.

 @option options [Hash<String, Array<Hash>] :client_examples ({})
   A hash of client examples. Hash keys should be API operation method
   names (snake_cased). Hash values should be arrays of hashes.
   Each hash should contain the following keys:

   * `:name` - The name of the example
   * `:code` - The Ruby example code

 Generates the source for a library as a single string.
 @return [String<code>]
 @api private