Sha256: c16ec73ebc891458b60a4330fad85f7306ed6c66a43cf7cfa45ca1bc61842125

Contents?: true

Size: 737 Bytes

Versions: 1

Compression:

Stored size: 737 Bytes

Contents

module MetaCon
  class Switch
    def self.handle(cmd, opts)
      if opts.nil? or opts.size == 0
        all = $proj.list(cmd)
        current = $proj.current_state[cmd]
        all.sort.each do |avail|
          if avail == current
            $cli.cputs "* |{green #{avail}}"
          else
            puts "  #{avail}"
          end
        end
      else
        res = $proj.switch({cmd=>opts[0]})
        case res
        when :nochange
          $cli.cwarn 'Nothing changed'
        when :switched
          $cli.result "Switched #{cmd} to '#{opts[0]}'"
        when :impossible
          $cli.cfail 'Cannot switch. Probably because submodules need committing.'
        end
        MetaCon::Stat.curr
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
metacon-0.1.0 lib/metacon/switch.rb