wrnap 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f2efcb65abde80f14ce6f0e5eba3d5438b23ba33
4
- data.tar.gz: 6c7873c5b0936b137a7f0f957f4853bcdc48d345
3
+ metadata.gz: d7152b75ccf68c5de1ca50f9f0d45e226315b19e
4
+ data.tar.gz: f10da874182ca44bd751447d7982123554a98506
5
5
  SHA512:
6
- metadata.gz: aa223b71c6b69f3207ebf76b4b34b90a73d4686293adc10579936d3ac609247648ff62dd1f4cf529ac6be9b8fa28010151c673c39c6d0ef4040ecacc07a3875f
7
- data.tar.gz: 3808f6f38a0c3a9a5877e3d829afab5fe11766d31dd55a1091207a774dfa31b87d3b4376a1baaf1adc15c396d6cc85f403e4af30eb031a5f5f83964ee5bf4b88
6
+ metadata.gz: f8f4c460003509e340cc47681f6b6a3cd71ec90edf2a612bfe7fd2fb4248dfcce4c73cd274eec3b8350904380410542bcaa2cf82cf7e361019e77829bfc7bf73
7
+ data.tar.gz: 80ca9ab389a258371c9ec97c90a7b1ce64c3976155eae2a9d0fac31eeceece4b0e341ba45c5ed447ddb5a55ef9d8c5f5fae52e3d8c7a41dd9d27e45631b3498b
@@ -68,27 +68,6 @@ module Wrnap
68
68
  Context.init_from_entrez(*context, coords: coords, rna: rna, &block)
69
69
  end
70
70
 
71
- def init_from_self(rna, &block)
72
- # This happens when you call a Wrnap library function with the output of something like Wrnap::Fold.run(...).mfe
73
- new(
74
- sequence: rna.sequence,
75
- structures: rna.structures,
76
- comment: rna.comment,
77
- &block
78
- ).tap do |new_rna|
79
- new_rna.instance_variable_set(:@metadata, rna.metadata.clone)
80
- end
81
- end
82
-
83
- def init_from_old_rna_object(rna)
84
- init_from_self(rna).tap do |new_rna|
85
- new_rna.instance_variable_set(:@structures, [
86
- rna.instance_variable_get(:@structure),
87
- rna.instance_variable_get(:@second_structure)
88
- ].compact)
89
- end
90
- end
91
-
92
71
  alias_method :placeholder, :new
93
72
  end
94
73
 
@@ -7,6 +7,7 @@ module Wrnap
7
7
  include Wrnap::Global::Yaml
8
8
 
9
9
  attr_reader :rnas
10
+ attr_accessor :name
10
11
 
11
12
  class << self
12
13
  def load_all(pattern = "*.fa", &block)
@@ -17,8 +18,8 @@ module Wrnap
17
18
  end
18
19
  end
19
20
 
20
- def initialize(rnas)
21
- @rnas = rnas.kind_of?(Array) ? rnas : [rnas]
21
+ def initialize(rnas, name = "")
22
+ @rnas, @name = rnas.kind_of?(Array) ? rnas : [rnas], name
22
23
  end
23
24
 
24
25
  def write_fa!(filename)
@@ -56,7 +57,7 @@ module Wrnap
56
57
  end
57
58
 
58
59
  def inspect
59
- "#<Wrnap::Rna::Box with %d RNAs>" % rnas.size
60
+ ("#<Wrnap::Rna::Box %s with %d RNAs>" % [name, rnas.size]).gsub(/\s\s+/, " ")
60
61
  end
61
62
  end
62
63
  end
@@ -69,6 +69,8 @@ module Wrnap
69
69
  end
70
70
 
71
71
  def detached_copy
72
+ # The implementation of this in RubyTree explicitly returns a new Tree::TreeNode instance rather than self.class.new, so we
73
+ # maintain ducktyping by intercepting the method.
72
74
  self.class.new(@name, @content ? @content.clone : nil)
73
75
  end
74
76
 
@@ -148,6 +150,23 @@ module Wrnap
148
150
  subtree << node
149
151
  end
150
152
  end
153
+
154
+ # RNA.from_fa("xpt.fa").trunk.pp
155
+ # * root
156
+ # |---+ (5..12, 66..73 [8])
157
+ # | |---> (18..22, 30..34 [5])
158
+ # | +---> (45..50, 58..63 [6])
159
+ # |---+ (75..78, 102..105 [4]) <-
160
+ # | +---> (80..86, 95..101 [7]) <-
161
+ # +---> (112..125, 133..146 [14])
162
+ #
163
+ # RNA.from_fa("xpt.fa").trunk.coalesce.pp
164
+ # * root
165
+ # |---+ (5..12, 66..73 [8])
166
+ # | |---> (18..22, 30..34 [5])
167
+ # | +---> (45..50, 58..63 [6])
168
+ # |---> (80..86, 95..101 [7]) <-
169
+ # +---> (112..125, 133..146 [14])
151
170
 
152
171
  def coalesce
153
172
  self.class.new(rna, root.clone).tap { |tree| tree.merge_interior_loops! }
@@ -157,6 +176,22 @@ module Wrnap
157
176
  tap { merge_interior_loops! }
158
177
  end
159
178
 
179
+ # RNA.from_fa("xpt.fa").trunk.pp
180
+ # * root
181
+ # |---+ (5..12, 66..73 [8])
182
+ # | |---> (18..22, 30..34 [5])
183
+ # | +---> (45..50, 58..63 [6])
184
+ # |---+ (75..78, 102..105 [4]) <-
185
+ # | +---> (80..86, 95..101 [7]) <-
186
+ # +---> (112..125, 133..146 [14])
187
+ #
188
+ # RNA.from_fa("xpt.fa").trunk.fuse.pp
189
+ # * root
190
+ # |---+ (5..12, 66..73 [8])
191
+ # | |---> (18..22, 30..34 [5])
192
+ # | +---> (45..50, 58..63 [6])
193
+ # |---> (75..86, 94..105 [12]) <-
194
+ # +---> (112..125, 133..146 [14])
160
195
  def fuse
161
196
  self.class.new(rna, root.clone).tap { |tree| tree.extend_interior_loops! }
162
197
  end
@@ -1,3 +1,3 @@
1
1
  module Wrnap
2
- VERSION = "1.2.1"
2
+ VERSION = "1.2.2"
3
3
  end
@@ -20,11 +20,11 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.required_ruby_version = ">= 2.0"
22
22
 
23
- spec.add_development_dependency "awesome_print", "~> 1.2.0"
23
+ spec.add_development_dependency "awesome_print", "~> 1.2"
24
24
  spec.add_development_dependency "bundler", "~> 1.7"
25
- spec.add_development_dependency "gem-release", "~> 0.7", ">= 0.7.3"
26
- spec.add_development_dependency "rake", "~> 10.0"
27
-
25
+ spec.add_development_dependency "gem-release", "~> 0.7"
26
+ spec.add_development_dependency "rake", "~> 10.4"
27
+
28
28
  spec.add_runtime_dependency "activesupport", "~> 4.0"
29
29
  spec.add_runtime_dependency "bio", "~> 1.4"
30
30
  spec.add_runtime_dependency "bio-stockholm", "~> 0.0.1"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wrnap
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evan Senter
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-12 00:00:00.000000000 Z
11
+ date: 2015-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.2.0
19
+ version: '1.2'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.2.0
26
+ version: '1.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -45,9 +45,6 @@ dependencies:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0.7'
48
- - - ">="
49
- - !ruby/object:Gem::Version
50
- version: 0.7.3
51
48
  type: :development
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
@@ -55,23 +52,20 @@ dependencies:
55
52
  - - "~>"
56
53
  - !ruby/object:Gem::Version
57
54
  version: '0.7'
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: 0.7.3
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: rake
63
57
  requirement: !ruby/object:Gem::Requirement
64
58
  requirements:
65
59
  - - "~>"
66
60
  - !ruby/object:Gem::Version
67
- version: '10.0'
61
+ version: '10.4'
68
62
  type: :development
69
63
  prerelease: false
70
64
  version_requirements: !ruby/object:Gem::Requirement
71
65
  requirements:
72
66
  - - "~>"
73
67
  - !ruby/object:Gem::Version
74
- version: '10.0'
68
+ version: '10.4'
75
69
  - !ruby/object:Gem::Dependency
76
70
  name: activesupport
77
71
  requirement: !ruby/object:Gem::Requirement