Module: Zemax

Defined in:
lib/zemax.rb

Constant Summary collapse

VERSION_FILE =

:nodoc:

Pathname.new(__FILE__).dirname + '../VERSION'
VERSION =
VERSION_FILE.exist? ? VERSION_FILE.read.strip : nil

Class Method Summary collapse

Class Method Details

.require_lib(lib, opts = {}) ⇒ Object

Require ruby source file(s). Lib should be either file name or glob Accepts following options:

:file

Libs are required relative to this file - defaults to __FILE__

:dir

Required libs are located under this dir name - defaults to gem name



12
13
14
15
16
# File 'lib/zemax.rb', line 12

def self.require_lib( lib, opts={} )
  file = Pathname.new(opts[:file] || __FILE__)
  name = file.dirname + (opts[:dir] || file.basename('.*')) + lib.gsub(/(?<!.rb)$/, '.rb')
  Pathname.glob(name.to_s).sort.each {|rb| require rb}
end

.require_libs(libs, opts = {}) ⇒ Object

Requires ruby source file(s). Accepts either single name or Array of filenames/globs Accepts following options:

:file

Libs are required relative to this file - defaults to __FILE__

:dir

Required libs are located under this dir name - defaults to gem name



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

def self.require_libs( libs, opts={} )
  [libs].flatten.each {|lib| require_lib lib, opts }
end