Module: BEL::Gen

Defined in:
lib/bel/gen.rb,
lib/bel/gen/term.rb,
lib/bel/gen/nanopub.rb,
lib/bel/gen/citation.rb,
lib/bel/gen/namespace.rb,
lib/bel/gen/parameter.rb,
lib/bel/gen/statement.rb,
lib/bel/gen/annotation.rb,
lib/bel/gen/document_header.rb,
lib/bel/gen/sample_resources.rb

Overview

The Gen module defines submodules that generate random data that represent parts of a nanopub.

Defined Under Namespace

Modules: Annotation, Citation, DocumentHeader, Namespace, Nanopub, Parameter, SampleResources, Statement, Term

Class Method Summary collapse

Class Method Details

.soft_require(*paths) ⇒ Array<Boolean>

Requires paths treated as a soft dependency to bel.rb.

Parameters:

  • paths (Array<String>)

    the paths to require as soft dependencies

Returns:

  • (Array<Boolean>)

    array of Kernel#require results; parallel with paths

Raises:

  • (LoadError)

    if any String in paths cannot be required



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/bel/gen.rb', line 15

def self.soft_require(*paths)
  paths.map { |path|
    begin
      require(path)
    rescue LoadError => err
      $stderr.puts <<-ERR.gsub(/^ {12}/, '')
        Error loading soft dependency.
        You will need to install "#{path}" to use this feature.

        Execute the following on the command line:

          gem install #{path}

        Error:

          #{err}

      ERR
      raise
    end
  }
end