lims-core 3.2.3

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.
Files changed (177) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +5 -0
  3. data/.rspec +1 -0
  4. data/.rvmrc +2 -0
  5. data/.travis.yml +2 -0
  6. data/.vimrc +27 -0
  7. data/.yard_templates/default/layout/html/footer.erb +0 -0
  8. data/.yardopts +1 -0
  9. data/Gemfile +54 -0
  10. data/Gemfile.lock +197 -0
  11. data/Guardfile +21 -0
  12. data/Guardfile.tmux +28 -0
  13. data/README.markdown +67 -0
  14. data/Rakefile +16 -0
  15. data/config/database.yml +16 -0
  16. data/doc/Array.html +116 -0
  17. data/doc/Array/ArrayLoggerPersistor.html +152 -0
  18. data/doc/Lims.html +114 -0
  19. data/doc/Lims/Core.html +178 -0
  20. data/doc/Lims/Core/Action.html +91 -0
  21. data/doc/Lims/Core/Actions.html +116 -0
  22. data/doc/Lims/Core/Actions/Action.html +216 -0
  23. data/doc/Lims/Core/Actions/Action/AfterEval.html +853 -0
  24. data/doc/Lims/Core/Actions/Action/InvalidParameters.html +268 -0
  25. data/doc/Lims/Core/Actions/ActionGroup.html +196 -0
  26. data/doc/Lims/Core/Actions/ActionGroup/AfterEval.html +315 -0
  27. data/doc/Lims/Core/Actions/BulkAction.html +224 -0
  28. data/doc/Lims/Core/Actions/BulkAction/AfterEval.html +253 -0
  29. data/doc/Lims/Core/Actions/TestActionGroup.html +101 -0
  30. data/doc/Lims/Core/Actions/TestActionGroup/Action.html +133 -0
  31. data/doc/Lims/Core/Actions/TestActionGroup/ActionGroup.html +127 -0
  32. data/doc/Lims/Core/Base.html +287 -0
  33. data/doc/Lims/Core/Base/AccessibleViaSuper.html +252 -0
  34. data/doc/Lims/Core/Base/ClassMethod.html +177 -0
  35. data/doc/Lims/Core/Base/HashString.html +177 -0
  36. data/doc/Lims/Core/Base/IsArrayOf.html +606 -0
  37. data/doc/Lims/Core/Base/State.html +130 -0
  38. data/doc/Lims/Core/Organization.html +113 -0
  39. data/doc/Lims/Core/Organization/Batch.html +106 -0
  40. data/doc/Lims/Core/Persistence.html +267 -0
  41. data/doc/Lims/Core/Persistence/ComparisonFilter.html +318 -0
  42. data/doc/Lims/Core/Persistence/Filter.html +252 -0
  43. data/doc/Lims/Core/Persistence/IdentityMap.html +409 -0
  44. data/doc/Lims/Core/Persistence/IdentityMap/Class.html +144 -0
  45. data/doc/Lims/Core/Persistence/IdentityMap/DuplicateError.html +126 -0
  46. data/doc/Lims/Core/Persistence/IdentityMap/DuplicateIdError.html +136 -0
  47. data/doc/Lims/Core/Persistence/IdentityMap/DuplicateObjectError.html +136 -0
  48. data/doc/Lims/Core/Persistence/IdentityMapClass.html +133 -0
  49. data/doc/Lims/Core/Persistence/Logger.html +105 -0
  50. data/doc/Lims/Core/Persistence/Logger/Persistor.html +334 -0
  51. data/doc/Lims/Core/Persistence/Logger/Session.html +452 -0
  52. data/doc/Lims/Core/Persistence/Logger/Store.html +470 -0
  53. data/doc/Lims/Core/Persistence/MessageBus.html +871 -0
  54. data/doc/Lims/Core/Persistence/MessageBus/ConnectionError.html +123 -0
  55. data/doc/Lims/Core/Persistence/MessageBus/InvalidSettingsError.html +122 -0
  56. data/doc/Lims/Core/Persistence/MultiCriteriaFilter.html +293 -0
  57. data/doc/Lims/Core/Persistence/PersistAssociationTrait.html +91 -0
  58. data/doc/Lims/Core/Persistence/PersistableTrait.html +91 -0
  59. data/doc/Lims/Core/Persistence/Persistor.html +3072 -0
  60. data/doc/Lims/Core/Persistence/Persistor/DuplicateError.html +205 -0
  61. data/doc/Lims/Core/Persistence/Persistor/DuplicateIdError.html +147 -0
  62. data/doc/Lims/Core/Persistence/Persistor/DuplicateObjectError.html +147 -0
  63. data/doc/Lims/Core/Persistence/PersistorTrait.html +91 -0
  64. data/doc/Lims/Core/Persistence/ResourceState.html +1738 -0
  65. data/doc/Lims/Core/Persistence/Search.html +269 -0
  66. data/doc/Lims/Core/Persistence/Search/CreateSearch.html +251 -0
  67. data/doc/Lims/Core/Persistence/Search/SearchPersistor.html +240 -0
  68. data/doc/Lims/Core/Persistence/Search/SearchSequelPersistor.html +396 -0
  69. data/doc/Lims/Core/Persistence/Sequel.html +117 -0
  70. data/doc/Lims/Core/Persistence/Sequel/Filters.html +462 -0
  71. data/doc/Lims/Core/Persistence/Sequel/ForTest.html +101 -0
  72. data/doc/Lims/Core/Persistence/Sequel/ForTest/Name.html +137 -0
  73. data/doc/Lims/Core/Persistence/Sequel/ForTest/Name/NamePersitor.html +143 -0
  74. data/doc/Lims/Core/Persistence/Sequel/Migrations.html +266 -0
  75. data/doc/Lims/Core/Persistence/Sequel/Persistor.html +665 -0
  76. data/doc/Lims/Core/Persistence/Sequel/Session.html +501 -0
  77. data/doc/Lims/Core/Persistence/Sequel/Store.html +417 -0
  78. data/doc/Lims/Core/Persistence/Session.html +2751 -0
  79. data/doc/Lims/Core/Persistence/Session/UnmanagedObjectError.html +111 -0
  80. data/doc/Lims/Core/Persistence/StateGroup.html +696 -0
  81. data/doc/Lims/Core/Persistence/StateList.html +498 -0
  82. data/doc/Lims/Core/Persistence/Store.html +695 -0
  83. data/doc/Lims/Core/Persistence/UuidResource.html +1044 -0
  84. data/doc/Lims/Core/Persistence/UuidResource/InvalidUuidError.html +111 -0
  85. data/doc/Lims/Core/Persistence/UuidResource/UuidResourcePersistor.html +337 -0
  86. data/doc/Lims/Core/Persistence/Uuidable.html +799 -0
  87. data/doc/Lims/Core/Persistor.html +320 -0
  88. data/doc/Lims/Core/Resource.html +165 -0
  89. data/doc/Object.html +228 -0
  90. data/doc/SessionSpec.html +101 -0
  91. data/doc/SessionSpec/Model.html +279 -0
  92. data/doc/SessionSpec/Model/ModelPersistor.html +327 -0
  93. data/doc/_index.html +732 -0
  94. data/doc/class_list.html +47 -0
  95. data/doc/css/common.css +1 -0
  96. data/doc/css/full_list.css +55 -0
  97. data/doc/css/style.css +322 -0
  98. data/doc/file.README.html +127 -0
  99. data/doc/file_list.html +49 -0
  100. data/doc/frames.html +13 -0
  101. data/doc/index.html +127 -0
  102. data/doc/js/app.js +205 -0
  103. data/doc/js/full_list.js +167 -0
  104. data/doc/js/jquery.js +16 -0
  105. data/doc/method_list.html +1894 -0
  106. data/doc/top-level-namespace.html +100 -0
  107. data/lib/common.rb +18 -0
  108. data/lib/lims-core.rb +29 -0
  109. data/lib/lims-core/actions.rb +10 -0
  110. data/lib/lims-core/actions/action.rb +185 -0
  111. data/lib/lims-core/actions/action_group.rb +54 -0
  112. data/lib/lims-core/actions/bulk_action.rb +65 -0
  113. data/lib/lims-core/base.rb +132 -0
  114. data/lib/lims-core/helpers.rb +41 -0
  115. data/lib/lims-core/persistence.rb +15 -0
  116. data/lib/lims-core/persistence/comparison_filter.rb +54 -0
  117. data/lib/lims-core/persistence/filter.rb +23 -0
  118. data/lib/lims-core/persistence/identity_map.rb +55 -0
  119. data/lib/lims-core/persistence/logger/all.rb +5 -0
  120. data/lib/lims-core/persistence/logger/persistor.rb +35 -0
  121. data/lib/lims-core/persistence/logger/session.rb +30 -0
  122. data/lib/lims-core/persistence/logger/store.rb +37 -0
  123. data/lib/lims-core/persistence/message_bus.rb +131 -0
  124. data/lib/lims-core/persistence/multi_criteria_filter.rb +50 -0
  125. data/lib/lims-core/persistence/persist_association_trait.rb +96 -0
  126. data/lib/lims-core/persistence/persistable_trait.rb +150 -0
  127. data/lib/lims-core/persistence/persistor.rb +495 -0
  128. data/lib/lims-core/persistence/resource_state.rb +157 -0
  129. data/lib/lims-core/persistence/search.rb +3 -0
  130. data/lib/lims-core/persistence/search/all.rb +3 -0
  131. data/lib/lims-core/persistence/search/create_search.rb +55 -0
  132. data/lib/lims-core/persistence/search/search_persistor.rb +45 -0
  133. data/lib/lims-core/persistence/search/search_sequel_persistor.rb +40 -0
  134. data/lib/lims-core/persistence/sequel.rb +14 -0
  135. data/lib/lims-core/persistence/sequel/filters.rb +106 -0
  136. data/lib/lims-core/persistence/sequel/migrations.rb +14 -0
  137. data/lib/lims-core/persistence/sequel/migrations/add_audit_tables.rb +147 -0
  138. data/lib/lims-core/persistence/sequel/migrations/initial.rb +156 -0
  139. data/lib/lims-core/persistence/sequel/persistor.rb +200 -0
  140. data/lib/lims-core/persistence/sequel/session.rb +136 -0
  141. data/lib/lims-core/persistence/sequel/store.rb +37 -0
  142. data/lib/lims-core/persistence/session.rb +409 -0
  143. data/lib/lims-core/persistence/state_group.rb +97 -0
  144. data/lib/lims-core/persistence/state_list.rb +56 -0
  145. data/lib/lims-core/persistence/store.rb +73 -0
  146. data/lib/lims-core/persistence/uuid_resource.rb +115 -0
  147. data/lib/lims-core/persistence/uuid_resource_persistor.rb +43 -0
  148. data/lib/lims-core/persistence/uuidable.rb +107 -0
  149. data/lib/lims-core/resource.rb +21 -0
  150. data/lib/lims-core/subclass_tracker.rb +30 -0
  151. data/lib/lims-core/version.rb +5 -0
  152. data/lims-core.gemspec +40 -0
  153. data/makefile +52 -0
  154. data/showoff/core-2012-06-11/core/01_slide.md +237 -0
  155. data/showoff/core-2012-06-11/core/02_slide.md +110 -0
  156. data/showoff/core-2012-06-11/custom.css +44 -0
  157. data/showoff/core-2012-06-11/main/01_slide.md +53 -0
  158. data/showoff/core-2012-06-11/showoff.json +10 -0
  159. data/showoff/core-2012-06-11/tp1.tpl +1 -0
  160. data/spec/actions/action_group_spec.rb +39 -0
  161. data/spec/actions/spec_helper.rb +1 -0
  162. data/spec/persistence/identity_map_spec.rb +55 -0
  163. data/spec/persistence/logger/spec_helper.rb +7 -0
  164. data/spec/persistence/logger/store_spec.rb +48 -0
  165. data/spec/persistence/message_bus_spec.rb +76 -0
  166. data/spec/persistence/sequel/session_spec.rb +125 -0
  167. data/spec/persistence/sequel/spec_helper.rb +39 -0
  168. data/spec/persistence/sequel/store_shared.rb +25 -0
  169. data/spec/persistence/sequel/store_spec.rb +22 -0
  170. data/spec/persistence/session_spec.rb +199 -0
  171. data/spec/persistence/spec_helper.rb +2 -0
  172. data/spec/persistence/uuid_resource_spec.rb +80 -0
  173. data/spec/spec_helper.rb +10 -0
  174. data/spec/subclass_tracker_sperc.rb +62 -0
  175. data/utils/constant_tree.rb +29 -0
  176. data/utils/stack.rb +48 -0
  177. metadata +402 -0
@@ -0,0 +1,177 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Lims::Core::Base::ClassMethod
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../../_index.html">Index (C)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Core.html" title="Lims::Core (module)">Core</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Base.html" title="Lims::Core::Base (module)">Base</a></span></span>
38
+ &raquo;
39
+ <span class="title">ClassMethod</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Module: Lims::Core::Base::ClassMethod
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+ <dt class="r1 last">Defined in:</dt>
75
+ <dd class="r1 last">lib/lims-core/base.rb</dd>
76
+
77
+ </dl>
78
+ <div class="clear"></div>
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+ <h2>
87
+ Instance Method Summary
88
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
89
+ </h2>
90
+
91
+ <ul class="summary">
92
+
93
+ <li class="public ">
94
+ <span class="summary_signature">
95
+
96
+ <a href="#is_array_of-instance_method" title="#is_array_of (instance method)">- (Object) <strong>is_array_of</strong>(child_klass, options = {}, &amp;initializer) </a>
97
+
98
+
99
+
100
+ </span>
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+ <span class="summary_desc"><div class='inline'></div></span>
110
+
111
+ </li>
112
+
113
+
114
+ </ul>
115
+
116
+
117
+
118
+
119
+ <div id="instance_method_details" class="method_details_list">
120
+ <h2>Instance Method Details</h2>
121
+
122
+
123
+ <div class="method_details first">
124
+ <p class="signature first" id="is_array_of-instance_method">
125
+
126
+ - (<tt><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>is_array_of</strong>(child_klass, options = {}, &amp;initializer)
127
+
128
+
129
+
130
+ </p><table class="source_code">
131
+ <tr>
132
+ <td>
133
+ <pre class="lines">
134
+
135
+
136
+ 50
137
+ 51
138
+ 52
139
+ 53
140
+ 54
141
+ 55
142
+ 56
143
+ 57
144
+ 58
145
+ 59
146
+ 60
147
+ 61
148
+ 62</pre>
149
+ </td>
150
+ <td>
151
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 50</span>
152
+
153
+ <span class='kw'>def</span> <span class='id is_array_of'>is_array_of</span><span class='lparen'>(</span><span class='id child_klass'>child_klass</span><span class='comma'>,</span> <span class='id options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id initializer'>initializer</span><span class='rparen'>)</span>
154
+ <span class='id define_method'>define_method</span> <span class='symbol'>:initialize_array</span> <span class='kw'>do</span> <span class='op'>|</span><span class='op'>*</span><span class='id args'>args</span><span class='op'>|</span>
155
+ <span class='ivar'>@content</span> <span class='op'>=</span> <span class='id initializer'>initializer</span> <span class='op'>?</span> <span class='id initializer'>initializer</span><span class='lbracket'>[</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id child_klass'>child_klass</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
156
+ <span class='kw'>end</span>
157
+
158
+ <span class='id class_eval'>class_eval</span> <span class='kw'>do</span>
159
+ <span class='id include'>include</span> <span class='const'>Enumerable</span>
160
+ <span class='id include'>include</span> <span class='const'>IsArrayOf</span>
161
+ <span class='id def_delegators'>def_delegators</span> <span class='symbol'>:@content</span><span class='comma'>,</span> <span class='symbol'>:each</span><span class='comma'>,</span> <span class='symbol'>:size</span> <span class='comma'>,</span> <span class='symbol'>:each_with_index</span><span class='comma'>,</span> <span class='symbol'>:map</span><span class='comma'>,</span> <span class='symbol'>:zip</span><span class='comma'>,</span> <span class='symbol'>:clear</span><span class='comma'>,</span> <span class='symbol'>:empty?</span><span class='comma'>,</span> <span class='symbol'>:to_s</span> \
162
+ <span class='comma'>,</span> <span class='symbol'>:include?</span><span class='comma'>,</span> <span class='symbol'>:to_a</span><span class='comma'>,</span> <span class='symbol'>:first</span><span class='comma'>,</span> <span class='symbol'>:last</span>
163
+
164
+ <span class='kw'>end</span>
165
+ <span class='kw'>end</span></pre>
166
+ </td>
167
+ </tr>
168
+ </table>
169
+ </div>
170
+
171
+ </div>
172
+
173
+ </div>
174
+
175
+
176
+ </body>
177
+ </html>
@@ -0,0 +1,177 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Class: Lims::Core::Base::HashString
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../../_index.html">Index (H)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Core.html" title="Lims::Core (module)">Core</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Base.html" title="Lims::Core::Base (module)">Base</a></span></span>
38
+ &raquo;
39
+ <span class="title">HashString</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Class: Lims::Core::Base::HashString
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+ <dt class="r1">Inherits:</dt>
68
+ <dd class="r1">
69
+ <span class="inheritName">Virtus::Attribute::Object</span>
70
+
71
+ <ul class="fullTree">
72
+ <li><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></li>
73
+
74
+ <li class="next">Virtus::Attribute::Object</li>
75
+
76
+ <li class="next">Lims::Core::Base::HashString</li>
77
+
78
+ </ul>
79
+ <a href="#" class="inheritanceTree">show all</a>
80
+
81
+ </dd>
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+ <dt class="r2 last">Defined in:</dt>
92
+ <dd class="r2 last">lib/lims-core/base.rb</dd>
93
+
94
+ </dl>
95
+ <div class="clear"></div>
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+ <h2>
106
+ Instance Method Summary
107
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
108
+ </h2>
109
+
110
+ <ul class="summary">
111
+
112
+ <li class="public ">
113
+ <span class="summary_signature">
114
+
115
+ <a href="#coerce-instance_method" title="#coerce (instance method)">- (Object) <strong>coerce</strong>(hash) </a>
116
+
117
+
118
+
119
+ </span>
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+ <span class="summary_desc"><div class='inline'></div></span>
129
+
130
+ </li>
131
+
132
+
133
+ </ul>
134
+
135
+
136
+
137
+
138
+
139
+ <div id="instance_method_details" class="method_details_list">
140
+ <h2>Instance Method Details</h2>
141
+
142
+
143
+ <div class="method_details first">
144
+ <p class="signature first" id="coerce-instance_method">
145
+
146
+ - (<tt><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>coerce</strong>(hash)
147
+
148
+
149
+
150
+ </p><table class="source_code">
151
+ <tr>
152
+ <td>
153
+ <pre class="lines">
154
+
155
+
156
+ 121
157
+ 122
158
+ 123</pre>
159
+ </td>
160
+ <td>
161
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 121</span>
162
+
163
+ <span class='kw'>def</span> <span class='id coerce'>coerce</span><span class='lparen'>(</span><span class='id hash'>hash</span><span class='rparen'>)</span>
164
+ <span class='id hash'>hash</span><span class='period'>.</span><span class='id rekey'>rekey</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id key'>key</span><span class='op'>|</span> <span class='id key'>key</span><span class='period'>.</span><span class='id to_s'>to_s</span> <span class='rbrace'>}</span>
165
+ <span class='kw'>end</span></pre>
166
+ </td>
167
+ </tr>
168
+ </table>
169
+ </div>
170
+
171
+ </div>
172
+
173
+ </div>
174
+
175
+
176
+ </body>
177
+ </html>
@@ -0,0 +1,606 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Lims::Core::Base::IsArrayOf
8
+
9
+ &mdash; Documentation by YARD 0.7.3
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '../../..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../../../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../../../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../../../_index.html">Index (I)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../../../Lims.html" title="Lims (module)">Lims</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../Core.html" title="Lims::Core (module)">Core</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Base.html" title="Lims::Core::Base (module)">Base</a></span></span>
38
+ &raquo;
39
+ <span class="title">IsArrayOf</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Module: Lims::Core::Base::IsArrayOf
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+ <dt class="r1 last">Defined in:</dt>
75
+ <dd class="r1 last">lib/lims-core/base.rb</dd>
76
+
77
+ </dl>
78
+ <div class="clear"></div>
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+ <h2>
87
+ Instance Method Summary
88
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
89
+ </h2>
90
+
91
+ <ul class="summary">
92
+
93
+ <li class="public ">
94
+ <span class="summary_signature">
95
+
96
+ <a href="#%3D%3D-instance_method" title="#== (instance method)">- (Boolean) <strong>==</strong>(other) </a>
97
+
98
+
99
+
100
+ </span>
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+ <span class="summary_desc"><div class='inline'>
110
+ <p>Add content to compare If classe are not in the same hierarchy we only
111
+ compare the content.</p>
112
+ </div></span>
113
+
114
+ </li>
115
+
116
+
117
+ <li class="public ">
118
+ <span class="summary_signature">
119
+
120
+ <a href="#%5B%5D-instance_method" title="#[] (instance method)">- (Object) <strong>[]</strong>(i) </a>
121
+
122
+
123
+
124
+ </span>
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+ <span class="summary_desc"><div class='inline'>
134
+ <p>Delegate [] to the underlying array.</p>
135
+ </div></span>
136
+
137
+ </li>
138
+
139
+
140
+ <li class="public ">
141
+ <span class="summary_signature">
142
+
143
+ <a href="#%5B%5D%3D-instance_method" title="#[]= (instance method)">- (Object) <strong>[]=</strong>(i, value) </a>
144
+
145
+
146
+
147
+ </span>
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+ <span class="summary_desc"><div class='inline'></div></span>
157
+
158
+ </li>
159
+
160
+
161
+ <li class="public ">
162
+ <span class="summary_signature">
163
+
164
+ <a href="#content-instance_method" title="#content (instance method)">- (Array) <strong>content</strong> </a>
165
+
166
+
167
+
168
+ </span>
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+ <span class="summary_desc"><div class='inline'>
178
+ <p>The underlying array.</p>
179
+ </div></span>
180
+
181
+ </li>
182
+
183
+
184
+ <li class="public ">
185
+ <span class="summary_signature">
186
+
187
+ <a href="#each_content-instance_method" title="#each_content (instance method)">- (Object) <strong>each_content</strong> {|content| ... }</a>
188
+
189
+
190
+
191
+ </span>
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+ <span class="summary_desc"><div class='inline'>
201
+ <p>iterate only between non empty lanes.</p>
202
+ </div></span>
203
+
204
+ </li>
205
+
206
+
207
+ <li class="public ">
208
+ <span class="summary_signature">
209
+
210
+ <a href="#initialize-instance_method" title="#initialize (instance method)">- (IsArrayOf) <strong>initialize</strong>(*args, &amp;block) </a>
211
+
212
+
213
+
214
+ </span>
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+
223
+ <span class="summary_desc"><div class='inline'>
224
+ <p>A new instance of IsArrayOf.</p>
225
+ </div></span>
226
+
227
+ </li>
228
+
229
+
230
+ </ul>
231
+
232
+
233
+
234
+
235
+ <div id="instance_method_details" class="method_details_list">
236
+ <h2>Instance Method Details</h2>
237
+
238
+
239
+ <div class="method_details first">
240
+ <p class="signature first" id="==-instance_method">
241
+
242
+ - (<tt>Boolean</tt>) <strong>==</strong>(other)
243
+
244
+
245
+
246
+ </p><div class="docstring">
247
+ <div class="discussion">
248
+
249
+ <p>Add content to compare If classe are not in the same hierarchy we only
250
+ compare the content</p>
251
+
252
+
253
+ </div>
254
+ </div>
255
+ <div class="tags">
256
+ <h3>Parameters:</h3>
257
+ <ul class="param">
258
+
259
+ <li>
260
+
261
+ <span class='name'>other</span>
262
+
263
+
264
+ <span class='type'></span>
265
+
266
+
267
+
268
+ &mdash;
269
+ <div class='inline'>
270
+ <p>to compare with</p>
271
+ </div>
272
+
273
+ </li>
274
+
275
+ </ul>
276
+
277
+ <h3>Returns:</h3>
278
+ <ul class="return">
279
+
280
+ <li>
281
+
282
+
283
+ <span class='type'>(<tt>Boolean</tt>)</span>
284
+
285
+
286
+
287
+ </li>
288
+
289
+ </ul>
290
+
291
+ </div><table class="source_code">
292
+ <tr>
293
+ <td>
294
+ <pre class="lines">
295
+
296
+
297
+ 78
298
+ 79
299
+ 80
300
+ 81
301
+ 82
302
+ 83
303
+ 84</pre>
304
+ </td>
305
+ <td>
306
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 78</span>
307
+
308
+ <span class='kw'>def</span> <span class='op'>==</span><span class='lparen'>(</span><span class='id other'>other</span><span class='rparen'>)</span>
309
+ <span class='kw'>if</span> <span class='id other'>other</span><span class='period'>.</span><span class='id is_a?'>is_a?</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id class'>class</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='kw'>self</span><span class='period'>.</span><span class='id is_a?'>is_a?</span><span class='lparen'>(</span><span class='id other'>other</span><span class='period'>.</span><span class='id class'>class</span><span class='rparen'>)</span>
310
+ <span class='kw'>super</span><span class='lparen'>(</span><span class='id other'>other</span><span class='rparen'>)</span>
311
+ <span class='kw'>else</span>
312
+ <span class='op'>!</span><span class='id other'>other</span><span class='period'>.</span><span class='id nil?'>nil?</span>
313
+ <span class='kw'>end</span> <span class='op'>&amp;&amp;</span> <span class='kw'>self</span><span class='period'>.</span><span class='id to_a'>to_a</span> <span class='op'>==</span> <span class='id other'>other</span><span class='period'>.</span><span class='id to_a'>to_a</span>
314
+ <span class='kw'>end</span></pre>
315
+ </td>
316
+ </tr>
317
+ </table>
318
+ </div>
319
+
320
+ <div class="method_details ">
321
+ <p class="signature " id="[]-instance_method">
322
+
323
+ - (<tt><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>[]</strong>(i)
324
+
325
+
326
+
327
+ </p><div class="docstring">
328
+ <div class="discussion">
329
+
330
+ <p>Delegate [] to the underlying array. This is needed because Virtus redefine
331
+ [] as well</p>
332
+
333
+
334
+ </div>
335
+ </div>
336
+ <div class="tags">
337
+ <h3>Parameters:</h3>
338
+ <ul class="param">
339
+
340
+ <li>
341
+
342
+ <span class='name'>i</span>
343
+
344
+
345
+ <span class='type'>(<tt>Fixnum</tt>, <tt>...</tt>)</span>
346
+
347
+
348
+
349
+ &mdash;
350
+ <div class='inline'>
351
+ <p>index</p>
352
+ </div>
353
+
354
+ </li>
355
+
356
+ </ul>
357
+
358
+ <h3>Returns:</h3>
359
+ <ul class="return">
360
+
361
+ <li>
362
+
363
+
364
+ <span class='type'>(<tt><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></tt>)</span>
365
+
366
+
367
+
368
+ </li>
369
+
370
+ </ul>
371
+
372
+ </div><table class="source_code">
373
+ <tr>
374
+ <td>
375
+ <pre class="lines">
376
+
377
+
378
+ 96
379
+ 97
380
+ 98
381
+ 99
382
+ 100
383
+ 101</pre>
384
+ </td>
385
+ <td>
386
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 96</span>
387
+
388
+ <span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id i'>i</span><span class='rparen'>)</span>
389
+ <span class='kw'>case</span> <span class='id i'>i</span>
390
+ <span class='kw'>when</span> <span class='const'>Fixnum</span> <span class='kw'>then</span> <span class='kw'>self</span><span class='period'>.</span><span class='id content'>content</span><span class='lbracket'>[</span><span class='id i'>i</span><span class='rbracket'>]</span>
391
+ <span class='kw'>else</span> <span class='kw'>super</span><span class='lparen'>(</span><span class='id i'>i</span><span class='rparen'>)</span>
392
+ <span class='kw'>end</span>
393
+ <span class='kw'>end</span></pre>
394
+ </td>
395
+ </tr>
396
+ </table>
397
+ </div>
398
+
399
+ <div class="method_details ">
400
+ <p class="signature " id="[]=-instance_method">
401
+
402
+ - (<tt><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>[]=</strong>(i, value)
403
+
404
+
405
+
406
+ </p><table class="source_code">
407
+ <tr>
408
+ <td>
409
+ <pre class="lines">
410
+
411
+
412
+ 103
413
+ 104
414
+ 105
415
+ 106
416
+ 107
417
+ 108</pre>
418
+ </td>
419
+ <td>
420
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 103</span>
421
+
422
+ <span class='kw'>def</span> <span class='op'>[]=</span><span class='lparen'>(</span><span class='id i'>i</span><span class='comma'>,</span> <span class='id value'>value</span><span class='rparen'>)</span>
423
+ <span class='kw'>case</span> <span class='id i'>i</span>
424
+ <span class='kw'>when</span> <span class='const'>Fixnum</span> <span class='kw'>then</span> <span class='kw'>self</span><span class='period'>.</span><span class='id content'>content</span><span class='lbracket'>[</span><span class='id i'>i</span><span class='rbracket'>]</span><span class='op'>=</span><span class='id value'>value</span>
425
+ <span class='kw'>else</span> <span class='kw'>super</span><span class='lparen'>(</span><span class='id i'>i</span><span class='comma'>,</span> <span class='id value'>value</span><span class='rparen'>)</span>
426
+ <span class='kw'>end</span>
427
+ <span class='kw'>end</span></pre>
428
+ </td>
429
+ </tr>
430
+ </table>
431
+ </div>
432
+
433
+ <div class="method_details ">
434
+ <p class="signature " id="content-instance_method">
435
+
436
+ - (<tt><span class='object_link'><a href="../../../Array.html" title="Array (class)">Array</a></span></tt>) <strong>content</strong>
437
+
438
+
439
+
440
+ </p><div class="docstring">
441
+ <div class="discussion">
442
+
443
+ <p>The underlying array. Use to everything which is not directly delegated</p>
444
+
445
+
446
+ </div>
447
+ </div>
448
+ <div class="tags">
449
+
450
+ <h3>Returns:</h3>
451
+ <ul class="return">
452
+
453
+ <li>
454
+
455
+
456
+ <span class='type'>(<tt><span class='object_link'><a href="../../../Array.html" title="Array (class)">Array</a></span></tt>)</span>
457
+
458
+
459
+
460
+ </li>
461
+
462
+ </ul>
463
+
464
+ </div><table class="source_code">
465
+ <tr>
466
+ <td>
467
+ <pre class="lines">
468
+
469
+
470
+ 88
471
+ 89
472
+ 90</pre>
473
+ </td>
474
+ <td>
475
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 88</span>
476
+
477
+ <span class='kw'>def</span> <span class='id content'>content</span>
478
+ <span class='ivar'>@content</span>
479
+ <span class='kw'>end</span></pre>
480
+ </td>
481
+ </tr>
482
+ </table>
483
+ </div>
484
+
485
+ <div class="method_details ">
486
+ <p class="signature " id="each_content-instance_method">
487
+
488
+ - (<tt><span class='object_link'><a href="../../../Object.html" title="Object (class)">Object</a></span></tt>) <strong>each_content</strong> {|content| ... }
489
+
490
+
491
+
492
+ </p><div class="docstring">
493
+ <div class="discussion">
494
+
495
+ <p>iterate only between non empty lanes.</p>
496
+
497
+
498
+ </div>
499
+ </div>
500
+ <div class="tags">
501
+
502
+ <h3>Yields:</h3>
503
+ <ul class="yield">
504
+
505
+ <li>
506
+
507
+
508
+ <span class='type'>(<tt>content</tt>)</span>
509
+
510
+
511
+
512
+ </li>
513
+
514
+ </ul>
515
+ <h3>Returns:</h3>
516
+ <ul class="return">
517
+
518
+ <li>
519
+
520
+
521
+ <span class='type'></span>
522
+
523
+
524
+
525
+
526
+ <div class='inline'>
527
+ <p>itself</p>
528
+ </div>
529
+
530
+ </li>
531
+
532
+ </ul>
533
+
534
+ </div><table class="source_code">
535
+ <tr>
536
+ <td>
537
+ <pre class="lines">
538
+
539
+
540
+ 112
541
+ 113
542
+ 114
543
+ 115
544
+ 116</pre>
545
+ </td>
546
+ <td>
547
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 112</span>
548
+
549
+ <span class='kw'>def</span> <span class='id each_content'>each_content</span>
550
+ <span class='ivar'>@content</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id content'>content</span><span class='op'>|</span>
551
+ <span class='kw'>yield</span> <span class='id content'>content</span> <span class='kw'>if</span> <span class='id content'>content</span>
552
+ <span class='kw'>end</span>
553
+ <span class='kw'>end</span></pre>
554
+ </td>
555
+ </tr>
556
+ </table>
557
+ </div>
558
+
559
+ <div class="method_details ">
560
+ <p class="signature " id="initialize-instance_method">
561
+
562
+ - (<tt><span class='object_link'><a href="" title="Lims::Core::Base::IsArrayOf (module)">IsArrayOf</a></span></tt>) <strong>initialize</strong>(*args, &amp;block)
563
+
564
+
565
+
566
+ </p><div class="docstring">
567
+ <div class="discussion">
568
+
569
+ <p>A new instance of IsArrayOf</p>
570
+
571
+
572
+ </div>
573
+ </div>
574
+ <div class="tags">
575
+
576
+
577
+ </div><table class="source_code">
578
+ <tr>
579
+ <td>
580
+ <pre class="lines">
581
+
582
+
583
+ 69
584
+ 70
585
+ 71
586
+ 72</pre>
587
+ </td>
588
+ <td>
589
+ <pre class="code"><span class="info file"># File 'lib/lims-core/base.rb', line 69</span>
590
+
591
+ <span class='kw'>def</span> <span class='id initialize'>initialize</span><span class='lparen'>(</span><span class='op'>*</span><span class='id args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id block'>block</span><span class='rparen'>)</span>
592
+ <span class='kw'>super</span><span class='lparen'>(</span><span class='op'>*</span><span class='id args'>args</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id block'>block</span><span class='rparen'>)</span>
593
+ <span class='id initialize_array'>initialize_array</span><span class='lparen'>(</span><span class='rparen'>)</span>
594
+ <span class='kw'>end</span></pre>
595
+ </td>
596
+ </tr>
597
+ </table>
598
+ </div>
599
+
600
+ </div>
601
+
602
+ </div>
603
+
604
+
605
+ </body>
606
+ </html>