# File lib/compass/configuration/helpers.rb, line 90
      def add_project_configuration(*args)
        options = args.last.is_a?(Hash) ? args.pop : {}
        configuration_file_path = args.shift || detect_configuration_file
        raise ArgumentError, "Too many arguments" if args.any?
        if data = configuration_for(configuration_file_path, nil, configuration_for(options[:defaults]))
          if data.raw_project_type
            add_configuration(data.raw_project_type.to_sym)
          elsif options[:project_type]
            add_configuration(options[:project_type])
          else
            add_configuration(:stand_alone)
          end

          add_configuration(data)
        else
          add_configuration(options[:project_type] || configuration.project_type_without_default || (yield if block_given?) || :stand_alone)
        end
      end