Class: Bio::Conduit::Samples
- Inherits:
-
Object
- Object
- Bio::Conduit::Samples
- Defined in:
- lib/bio/conduit/samples.rb
Instance Attribute Summary collapse
-
#groups ⇒ Object
readonly
Returns the value of attribute groups.
-
#resources ⇒ Object
readonly
Returns the value of attribute resources.
-
#samples ⇒ Object
readonly
Returns the value of attribute samples.
Instance Method Summary collapse
- #[](name) ⇒ Object
- #each(&block) ⇒ Object
-
#initialize(filename) ⇒ Samples
constructor
A new instance of Samples.
Constructor Details
#initialize(filename) ⇒ Samples
Returns a new instance of Samples.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/bio/conduit/samples.rb', line 15 def initialize(filename) yaml = YAML::load(File.open(filename)) @samples = {} @groups = {} if yaml.has_key?("resources") @resources = yaml["resources"] else @resources = {} end if yaml.has_key?("samples") yaml["samples"].each_pair do |l1k, l1v| if l1v.is_a?(Hash) l1v.each_pair do |k, v| @samples[k] = {} @samples[k]['name'] = k @samples[k]['path'] = v @samples[k]["resources"] = @resources @samples[k]["group"] = l1k @groups[l1k] ||= [] @groups[l1k].push(@samples[k]) end else @samples[l1k] = {} @samples[l1k]['name'] = l1k @samples[l1k]['path'] = l1v @samples[l1k]["resources"] = @resources end end end end |
Instance Attribute Details
#groups ⇒ Object (readonly)
Returns the value of attribute groups.
13 14 15 |
# File 'lib/bio/conduit/samples.rb', line 13 def groups @groups end |
#resources ⇒ Object (readonly)
Returns the value of attribute resources.
13 14 15 |
# File 'lib/bio/conduit/samples.rb', line 13 def resources @resources end |
#samples ⇒ Object (readonly)
Returns the value of attribute samples.
13 14 15 |
# File 'lib/bio/conduit/samples.rb', line 13 def samples @samples end |
Instance Method Details
#[](name) ⇒ Object
50 51 52 |
# File 'lib/bio/conduit/samples.rb', line 50 def [](name) @samples[name] end |
#each(&block) ⇒ Object
54 55 56 57 58 |
# File 'lib/bio/conduit/samples.rb', line 54 def each(&block) @samples.each do |sam| block.call(sam) end end |