Class: Xezat::CygclassManager

Inherits:
Object
  • Object
show all
Defined in:
lib/xezat/cygclasses.rb

Instance Method Summary collapse

Constructor Details

#initialize(cygclass_dir = '/usr/share/cygport/cygclass') ⇒ CygclassManager

Returns a new instance of CygclassManager.

Raises:

  • (ArgumentError)


5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/xezat/cygclasses.rb', line 5

def initialize(cygclass_dir = '/usr/share/cygport/cygclass')
  raise ArgumentError, "#{cygclass_dir} not found" unless Dir.exist?(cygclass_dir)

  @cygclasses = []
  @vcs_cygclasses = []
  Dir.glob(File.join(cygclass_dir, '*.cygclass')) do |filename|
    cygclass = File.basename(filename, '.cygclass')
    @cygclasses << cygclass.intern
    File.foreach(filename) do |line|
      @vcs_cygclasses << cygclass.intern if line.strip == "readonly -f #{cygclass}_fetch"
    end
  end
end

Instance Method Details

#include?(cygclass) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/xezat/cygclasses.rb', line 19

def include?(cygclass)
  @cygclasses.include?(cygclass)
end

#vcsObject



27
28
29
# File 'lib/xezat/cygclasses.rb', line 27

def vcs
  @vcs_cygclasses
end

#vcs?(cygclass) ⇒ Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/xezat/cygclasses.rb', line 23

def vcs?(cygclass)
  @vcs_cygclasses.include?(cygclass)
end