    # 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