Module: VisualStudio

Defined in:
lib/visual_studio.rb,
lib/visual_studio/gem.rb,
lib/visual_studio/install.rb,
lib/visual_studio/product.rb,
lib/visual_studio/environment.rb,
lib/visual_studio/sdks/windows.rb,
lib/visual_studio/helpers/pretty_string.rb

Defined Under Namespace

Modules: Environment, Gem, Helpers, Windows Classes: Install, Product

Constant Summary collapse

NAMES =
['vs2015', 'vs2013', 'vs2012', 'vs2010', 'vs2008', 'vs2005']
PRETTY_NAMES =
['Visual Studio 2015',
'Visual Studio 2013',
'Visual Studio 2012',
'Visual Studio 2010',
'Visual Studio 2008',
'Visual Studio 2005']
VERSIONS =
[14.0, 12.0, 11.0, 10.0, 9.0, 8.0].map(&:to_s)
SDKS =
{windows:  %w{10.0 8.1 8.0 7.1}},
{windows:       %w{8.1 8.0 7.1}},
{windows:       %w{8.1 8.0 7.1}},
{windows:       %w{8.1 8.0 7.1}},
{windows:               %w{7.1 7.0}},
{windows:               %w{7.1 7.0}}
NAME_TO_VERSION =
VERSION_TO_NAME =
NAME_TO_PRETTY_NAME =
VERSION_TO_PRETTY_NAME =
NAME_TO_SDKS =
VERSION_TO_SDKS =

Class Method Summary collapse

Class Method Details

.available?(name_or_version = nil) ⇒ Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/visual_studio.rb', line 37

def self.available?(name_or_version=nil)
  self.installed?(name_or_version)
end

.find(name_or_version) ⇒ Object



61
62
63
# File 'lib/visual_studio.rb', line 61

def self.find(name_or_version)
  VisualStudio::Install.find(name_or_version)
end

.find_by(criteria) ⇒ Object



65
66
67
# File 'lib/visual_studio.rb', line 65

def self.find_by(criteria)
  VisualStudio::Install.find_by(criteria)
end

.find_by_name(name) ⇒ Object



69
70
71
# File 'lib/visual_studio.rb', line 69

def self.find_by_name(name)
  VisualStudio::Install.find_by_name(name)
end

.find_by_version(version) ⇒ Object



73
74
75
# File 'lib/visual_studio.rb', line 73

def self.find_by_version(version)
  VisualStudio::Install.find_by_version(name)
end

.install(name_or_version = nil) ⇒ Object



49
50
51
52
53
54
55
# File 'lib/visual_studio.rb', line 49

def self.install(name_or_version=nil)
  if name_or_version
    self.find(name_or_version)
  else
    self.latest
  end
end

.installed?(name_or_version = nil) ⇒ Boolean

Returns:

  • (Boolean)


41
42
43
44
45
46
47
# File 'lib/visual_studio.rb', line 41

def self.installed?(name_or_version=nil)
  if name_or_version
    VisualStudio::Install.available?(name_or_version)
  else
    VisualStudio::VERSIONS.any?{|version| VisualStudio.installed?(version)}
  end
end

.latestObject



57
58
59
# File 'lib/visual_studio.rb', line 57

def self.latest
  VisualStudio::Install.latest
end