utopia 2.2.0 → 2.3.0

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 (290) hide show
  1. checksums.yaml +5 -5
  2. data/.codeclimate.yml +1 -0
  3. data/.travis.yml +3 -1
  4. data/Gemfile +2 -0
  5. data/README.md +2 -2
  6. data/Rakefile +19 -7
  7. data/docs/.nojekyll +0 -0
  8. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.apache.css +6 -0
  9. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.applescript.css +5 -0
  10. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.assembly.css +8 -0
  11. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.bash-script.css +6 -0
  12. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.bash.css +10 -0
  13. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.clang.css +3 -0
  14. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.css.css +14 -0
  15. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.diff.css +16 -0
  16. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.html.css +5 -0
  17. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.ocaml.css +3 -0
  18. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.protobuf.css +2 -0
  19. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.python.css +6 -0
  20. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.ruby.css +2 -0
  21. data/docs/_components/jquery-syntax/base/jquery.syntax.brush.xml.css +18 -0
  22. data/docs/_components/jquery-syntax/base/jquery.syntax.core.css +62 -0
  23. data/docs/_components/jquery-syntax/base/jquery.syntax.editor.css +6 -0
  24. data/docs/_components/jquery-syntax/base/theme.js +1 -0
  25. data/docs/_components/jquery-syntax/bright/jquery.syntax.core.css +27 -0
  26. data/docs/_components/jquery-syntax/bright/theme.js +1 -0
  27. data/docs/_components/jquery-syntax/jquery.syntax.brush.apache.js +41 -0
  28. data/docs/_components/jquery-syntax/jquery.syntax.brush.applescript.js +57 -0
  29. data/docs/_components/jquery-syntax/jquery.syntax.brush.assembly.js +37 -0
  30. data/docs/_components/jquery-syntax/jquery.syntax.brush.bash-script.js +67 -0
  31. data/docs/_components/jquery-syntax/jquery.syntax.brush.bash.js +33 -0
  32. data/docs/_components/jquery-syntax/jquery.syntax.brush.basic.js +51 -0
  33. data/docs/_components/jquery-syntax/jquery.syntax.brush.clang.js +89 -0
  34. data/docs/_components/jquery-syntax/jquery.syntax.brush.csharp.js +47 -0
  35. data/docs/_components/jquery-syntax/jquery.syntax.brush.css.js +80 -0
  36. data/docs/_components/jquery-syntax/jquery.syntax.brush.diff.js +24 -0
  37. data/docs/_components/jquery-syntax/jquery.syntax.brush.go.js +47 -0
  38. data/docs/_components/jquery-syntax/jquery.syntax.brush.haskell.js +45 -0
  39. data/docs/_components/jquery-syntax/jquery.syntax.brush.html.js +66 -0
  40. data/docs/_components/jquery-syntax/jquery.syntax.brush.io.js +45 -0
  41. data/docs/_components/jquery-syntax/jquery.syntax.brush.java.js +45 -0
  42. data/docs/_components/jquery-syntax/jquery.syntax.brush.javascript.js +40 -0
  43. data/docs/_components/jquery-syntax/jquery.syntax.brush.kai.js +29 -0
  44. data/docs/_components/jquery-syntax/jquery.syntax.brush.lisp.js +34 -0
  45. data/docs/_components/jquery-syntax/jquery.syntax.brush.lua.js +44 -0
  46. data/docs/_components/jquery-syntax/jquery.syntax.brush.nginx.js +31 -0
  47. data/docs/_components/jquery-syntax/jquery.syntax.brush.ocaml.js +73 -0
  48. data/docs/_components/jquery-syntax/jquery.syntax.brush.ooc.js +46 -0
  49. data/docs/_components/jquery-syntax/jquery.syntax.brush.pascal.js +51 -0
  50. data/docs/_components/jquery-syntax/jquery.syntax.brush.perl5.js +52 -0
  51. data/docs/_components/jquery-syntax/jquery.syntax.brush.php-script.js +48 -0
  52. data/docs/_components/jquery-syntax/jquery.syntax.brush.php.js +15 -0
  53. data/docs/_components/jquery-syntax/jquery.syntax.brush.plain.js +10 -0
  54. data/docs/_components/jquery-syntax/jquery.syntax.brush.protobuf.js +43 -0
  55. data/docs/_components/jquery-syntax/jquery.syntax.brush.python.js +44 -0
  56. data/docs/_components/jquery-syntax/jquery.syntax.brush.ruby.js +77 -0
  57. data/docs/_components/jquery-syntax/jquery.syntax.brush.scala.js +44 -0
  58. data/docs/_components/jquery-syntax/jquery.syntax.brush.smalltalk.js +29 -0
  59. data/docs/_components/jquery-syntax/jquery.syntax.brush.sql.js +31 -0
  60. data/docs/_components/jquery-syntax/jquery.syntax.brush.super-collider.js +57 -0
  61. data/docs/_components/jquery-syntax/jquery.syntax.brush.swift.js +55 -0
  62. data/docs/_components/jquery-syntax/jquery.syntax.brush.trenni.js +35 -0
  63. data/docs/_components/jquery-syntax/jquery.syntax.brush.xml.js +50 -0
  64. data/docs/_components/jquery-syntax/jquery.syntax.brush.yaml.js +29 -0
  65. data/docs/_components/jquery-syntax/jquery.syntax.cache.js +65 -0
  66. data/docs/_components/jquery-syntax/jquery.syntax.core.js +1098 -0
  67. data/docs/_components/jquery-syntax/jquery.syntax.editor.js +291 -0
  68. data/docs/_components/jquery-syntax/jquery.syntax.js +258 -0
  69. data/docs/_components/jquery-syntax/jquery.syntax.min.js +13 -0
  70. data/docs/_components/jquery-syntax/paper/jquery.syntax.core.css +31 -0
  71. data/docs/_components/jquery-syntax/paper/theme.js +1 -0
  72. data/docs/_components/jquery/core.js +482 -0
  73. data/docs/_components/jquery/jquery.js +10220 -0
  74. data/docs/_components/jquery/jquery.min.js +4 -0
  75. data/docs/_components/jquery/jquery.min.map +1 -0
  76. data/docs/_components/jquery/jquery.slim.js +8107 -0
  77. data/docs/_components/jquery/jquery.slim.min.js +4 -0
  78. data/docs/_components/jquery/jquery.slim.min.map +1 -0
  79. data/docs/_static/icon.png +0 -0
  80. data/docs/_static/site.css +205 -0
  81. data/docs/_static/utopia-background.svg +1 -0
  82. data/docs/_static/utopia.svg +1 -0
  83. data/docs/code/Utopia.html +511 -0
  84. data/docs/code/Utopia/Basename.html +654 -0
  85. data/docs/code/Utopia/Bootstrap.html +538 -0
  86. data/docs/code/Utopia/Command.html +207 -0
  87. data/docs/code/Utopia/Command/Environment.html +321 -0
  88. data/docs/code/Utopia/Command/Server.html +214 -0
  89. data/docs/code/Utopia/Command/Server/Create.html +222 -0
  90. data/docs/code/Utopia/Command/Server/Environment.html +236 -0
  91. data/docs/code/Utopia/Command/Server/Update.html +317 -0
  92. data/docs/code/Utopia/Command/Setup.html +145 -0
  93. data/docs/code/Utopia/Command/Setup/Server.html +298 -0
  94. data/docs/code/Utopia/Command/Setup/Site.html +180 -0
  95. data/docs/code/Utopia/Command/Site.html +279 -0
  96. data/docs/code/Utopia/Command/Site/Create.html +324 -0
  97. data/docs/code/Utopia/Command/Site/Update.html +407 -0
  98. data/docs/code/Utopia/Command/Top.html +279 -0
  99. data/docs/code/Utopia/Content.html +826 -0
  100. data/docs/code/Utopia/Content/Document.html +1818 -0
  101. data/docs/code/Utopia/Content/Document/State.html +1220 -0
  102. data/docs/code/Utopia/Content/Link.html +1286 -0
  103. data/docs/code/Utopia/Content/Links.html +841 -0
  104. data/docs/code/Utopia/Content/MarkupParser.html +881 -0
  105. data/docs/code/Utopia/Content/MarkupParser/ParsedTag.html +422 -0
  106. data/docs/code/Utopia/Content/MarkupParser/UnbalancedTagError.html +615 -0
  107. data/docs/code/Utopia/Content/Namespace.html +485 -0
  108. data/docs/code/Utopia/Content/Node.html +1188 -0
  109. data/docs/code/Utopia/Content/Node/Context.html +938 -0
  110. data/docs/code/Utopia/Content/Response.html +813 -0
  111. data/docs/code/Utopia/Content/SymbolicHash.html +419 -0
  112. data/docs/code/Utopia/Content/Tag.html +399 -0
  113. data/docs/code/Utopia/Content/Tags.html +136 -0
  114. data/docs/code/Utopia/Content/Tags/ContentTag.html +187 -0
  115. data/docs/code/Utopia/Content/Tags/DeferredTag.html +193 -0
  116. data/docs/code/Utopia/Content/Tags/Library.html +333 -0
  117. data/docs/code/Utopia/Content/Tags/NodeTag.html +193 -0
  118. data/docs/code/Utopia/Content/UnbalancedTagError.html +298 -0
  119. data/docs/code/Utopia/ContentLength.html +339 -0
  120. data/docs/code/Utopia/Controller.html +901 -0
  121. data/docs/code/Utopia/Controller/Actions.html +289 -0
  122. data/docs/code/Utopia/Controller/Actions/Action.html +978 -0
  123. data/docs/code/Utopia/Controller/Actions/ClassMethods.html +442 -0
  124. data/docs/code/Utopia/Controller/Base.html +1216 -0
  125. data/docs/code/Utopia/Controller/Respond.html +283 -0
  126. data/docs/code/Utopia/Controller/Respond/ClassMethods.html +236 -0
  127. data/docs/code/Utopia/Controller/Respond/Converter.html +256 -0
  128. data/docs/code/Utopia/Controller/Respond/Converter/Callback.html +484 -0
  129. data/docs/code/Utopia/Controller/Respond/Converter/ToJSON.html +375 -0
  130. data/docs/code/Utopia/Controller/Respond/Passthrough.html +291 -0
  131. data/docs/code/Utopia/Controller/Respond/Responder.html +529 -0
  132. data/docs/code/Utopia/Controller/Rewrite.html +290 -0
  133. data/docs/code/Utopia/Controller/Rewrite/ClassMethods.html +242 -0
  134. data/docs/code/Utopia/Controller/Rewrite/ExtractPrefixRule.html +364 -0
  135. data/docs/code/Utopia/Controller/Rewrite/Rewriter.html +464 -0
  136. data/docs/code/Utopia/Controller/Rewrite/Rule.html +209 -0
  137. data/docs/code/Utopia/Controller/Variables.html +550 -0
  138. data/docs/code/Utopia/Controllers.html +244 -0
  139. data/docs/code/Utopia/Exceptions.html +127 -0
  140. data/docs/code/Utopia/Exceptions/Handler.html +526 -0
  141. data/docs/code/Utopia/Exceptions/Mailer.html +476 -0
  142. data/docs/code/Utopia/Extensions.html +117 -0
  143. data/docs/code/Utopia/Extensions/ArraySplit.html +183 -0
  144. data/docs/code/Utopia/Extensions/DateTimeComparison.html +193 -0
  145. data/docs/code/Utopia/Extensions/TimeDateComparison.html +193 -0
  146. data/docs/code/Utopia/HTTP.html +244 -0
  147. data/docs/code/Utopia/HTTP/Status.html +415 -0
  148. data/docs/code/Utopia/Locale.html +606 -0
  149. data/docs/code/Utopia/Localization.html +1235 -0
  150. data/docs/code/Utopia/Localization/Wrapper.html +459 -0
  151. data/docs/code/Utopia/Logger.html +205 -0
  152. data/docs/code/Utopia/Logger/CompactFormatter.html +335 -0
  153. data/docs/code/Utopia/Path.html +3304 -0
  154. data/docs/code/Utopia/Path/Matcher.html +518 -0
  155. data/docs/code/Utopia/Path/Matcher/MatchData.html +475 -0
  156. data/docs/code/Utopia/Redirection.html +145 -0
  157. data/docs/code/Utopia/Redirection/ClientRedirect.html +717 -0
  158. data/docs/code/Utopia/Redirection/DirectoryIndex.html +298 -0
  159. data/docs/code/Utopia/Redirection/Errors.html +470 -0
  160. data/docs/code/Utopia/Redirection/Moved.html +312 -0
  161. data/docs/code/Utopia/Redirection/RequestFailure.html +226 -0
  162. data/docs/code/Utopia/Redirection/Rewrite.html +296 -0
  163. data/docs/code/Utopia/Session.html +883 -0
  164. data/docs/code/Utopia/Session/LazyHash.html +859 -0
  165. data/docs/code/Utopia/Setup.html +964 -0
  166. data/docs/code/Utopia/Static.html +690 -0
  167. data/docs/code/Utopia/Static/LocalFile.html +1098 -0
  168. data/docs/code/Utopia/Static/MimeTypeLoader.html +541 -0
  169. data/docs/code/Utopia/Static/MimeTypeLoader/ExpansionError.html +124 -0
  170. data/docs/code/Utopia/Tags.html +115 -0
  171. data/docs/code/Utopia/Tags/Environment.html +314 -0
  172. data/docs/code/Utopia/Tags/EnvironmentTag.html +314 -0
  173. data/docs/code/Utopia/Tags/Library.html +340 -0
  174. data/docs/code/_index.html +758 -0
  175. data/docs/code/class_list.html +51 -0
  176. data/docs/code/css/common.css +1 -0
  177. data/docs/code/css/full_list.css +58 -0
  178. data/docs/code/css/style.css +499 -0
  179. data/docs/code/file.README.html +169 -0
  180. data/docs/code/file_list.html +56 -0
  181. data/docs/code/frames.html +17 -0
  182. data/docs/code/index.html +169 -0
  183. data/docs/code/js/app.js +248 -0
  184. data/docs/code/js/full_list.js +216 -0
  185. data/docs/code/js/jquery.js +4 -0
  186. data/docs/code/materials/utopia.png +0 -0
  187. data/docs/code/materials/utopia.svg +1 -0
  188. data/docs/code/method_list.html +3443 -0
  189. data/docs/code/top-level-namespace.html +110 -0
  190. data/docs/index.html +92 -0
  191. data/docs/wiki.html +92 -0
  192. data/docs/wiki/bower-integration.html +74 -0
  193. data/docs/wiki/bower-integration/index.html +74 -0
  194. data/docs/wiki/development-environment-setup.html +60 -0
  195. data/docs/wiki/development-environment-setup/index.html +60 -0
  196. data/docs/wiki/edit.html +103 -0
  197. data/docs/wiki/faq/what-is-xnode.html +79 -0
  198. data/docs/wiki/faq/what-is-xnode/index.html +79 -0
  199. data/docs/wiki/middleware/content.html +64 -0
  200. data/docs/wiki/middleware/content/index.html +64 -0
  201. data/docs/wiki/middleware/controller.html +104 -0
  202. data/docs/wiki/middleware/controller/actions.html +117 -0
  203. data/docs/wiki/middleware/controller/actions/index.html +117 -0
  204. data/docs/wiki/middleware/controller/actions/rewrite/index.html +48 -0
  205. data/docs/wiki/middleware/controller/index.html +104 -0
  206. data/docs/wiki/middleware/controller/rewrite.html +111 -0
  207. data/docs/wiki/middleware/controller/rewrite/index.html +111 -0
  208. data/docs/wiki/middleware/localization.html +59 -0
  209. data/docs/wiki/middleware/localization/index.html +59 -0
  210. data/docs/wiki/middleware/redirection.html +61 -0
  211. data/docs/wiki/middleware/redirection/index.html +61 -0
  212. data/docs/wiki/middleware/session.html +71 -0
  213. data/docs/wiki/middleware/session/index.html +71 -0
  214. data/docs/wiki/middleware/static.html +57 -0
  215. data/docs/wiki/middleware/static/index.html +57 -0
  216. data/docs/wiki/server-setup.html +118 -0
  217. data/docs/wiki/server-setup/index.html +118 -0
  218. data/docs/wiki/testing.html +59 -0
  219. data/docs/wiki/testing/index.html +59 -0
  220. data/docs/wiki/updating-utopia.html +108 -0
  221. data/docs/wiki/updating-utopia/index.html +108 -0
  222. data/docs/wiki/your-first-page.html +80 -0
  223. data/docs/wiki/your-first-page/index.html +80 -0
  224. data/documentation/Guardfile +0 -12
  225. data/documentation/Rakefile +3 -0
  226. data/documentation/pages/_page.xnode +2 -0
  227. data/documentation/pages/wiki/content.md +1 -0
  228. data/documentation/pages/wiki/faq/what-is-xnode/content.md +37 -0
  229. data/documentation/pages/wiki/links.yaml +3 -1
  230. data/documentation/pages/wiki/server-setup/content.md +1 -1
  231. data/documentation/pages/wiki/show.xnode +2 -0
  232. data/documentation/pages/wiki/your-first-page/content.md +1 -1
  233. data/lib/utopia/command.rb +4 -4
  234. data/lib/utopia/command/environment.rb +73 -0
  235. data/lib/utopia/command/server.rb +19 -32
  236. data/lib/utopia/command/site.rb +26 -9
  237. data/lib/utopia/content/markup.rb +1 -1
  238. data/lib/utopia/setup.rb +49 -20
  239. data/lib/utopia/version.rb +1 -1
  240. data/setup/site/README.md +6 -7
  241. data/setup/site/Rakefile +3 -0
  242. data/setup/site/pages/_page.xnode +1 -1
  243. data/setup/site/public/_static/site.css +1 -1
  244. data/setup/site/tasks/bower.rake +3 -6
  245. data/setup/site/tasks/deploy.rake +1 -1
  246. data/setup/site/tasks/development.rake +1 -1
  247. data/setup/site/tasks/environment.rake +2 -2
  248. data/setup/site/tasks/static.rake +43 -0
  249. data/spec/utopia/command_spec.rb +170 -0
  250. data/spec/utopia/setup_spec.rb +20 -142
  251. metadata +225 -42
  252. data/documentation/public/_components/jquery-syntax/.sass-cache/040afc1428b286fb3c50151378b349a6149698d3/jquery.syntax.core.sassc +0 -0
  253. data/documentation/public/_components/jquery-syntax/.sass-cache/098642d80a1682613dca2bba6fd0a3bc9fd2bf04/jquery.syntax.layout.editor.sassc +0 -0
  254. data/documentation/public/_components/jquery-syntax/.sass-cache/098642d80a1682613dca2bba6fd0a3bc9fd2bf04/jquery.syntax.layout.fixed.sassc +0 -0
  255. data/documentation/public/_components/jquery-syntax/.sass-cache/098642d80a1682613dca2bba6fd0a3bc9fd2bf04/jquery.syntax.layout.inline.sassc +0 -0
  256. data/documentation/public/_components/jquery-syntax/.sass-cache/098642d80a1682613dca2bba6fd0a3bc9fd2bf04/jquery.syntax.layout.list.sassc +0 -0
  257. data/documentation/public/_components/jquery-syntax/.sass-cache/098642d80a1682613dca2bba6fd0a3bc9fd2bf04/jquery.syntax.layout.plain.sassc +0 -0
  258. data/documentation/public/_components/jquery-syntax/.sass-cache/098642d80a1682613dca2bba6fd0a3bc9fd2bf04/jquery.syntax.layout.table.sassc +0 -0
  259. data/documentation/public/_components/jquery-syntax/.sass-cache/10c58b30c53bf84f8360af8a864797092be26882/jquery.syntax.core.sassc +0 -0
  260. data/documentation/public/_components/jquery-syntax/.sass-cache/10c58b30c53bf84f8360af8a864797092be26882/jquery.syntax.layout.fixed.sassc +0 -0
  261. data/documentation/public/_components/jquery-syntax/.sass-cache/10c58b30c53bf84f8360af8a864797092be26882/jquery.syntax.layout.inline.sassc +0 -0
  262. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/_layout.scssc +0 -0
  263. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.apache.sassc +0 -0
  264. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.applescript.sassc +0 -0
  265. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.assembly.sassc +0 -0
  266. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.bash-script.sassc +0 -0
  267. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.bash.sassc +0 -0
  268. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.clang.sassc +0 -0
  269. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.css.sassc +0 -0
  270. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.diff.sassc +0 -0
  271. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.html.sassc +0 -0
  272. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.ocaml.sassc +0 -0
  273. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.protobuf.sassc +0 -0
  274. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.python.sassc +0 -0
  275. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.ruby.sassc +0 -0
  276. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.brush.xml.sassc +0 -0
  277. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.core.sassc +0 -0
  278. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.editor.sassc +0 -0
  279. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.layout.editor.sassc +0 -0
  280. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.layout.fixed.sassc +0 -0
  281. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.layout.list.sassc +0 -0
  282. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.layout.plain.sassc +0 -0
  283. data/documentation/public/_components/jquery-syntax/.sass-cache/3c69ad94149e2a6d9f4ffda01814fee3947b1389/jquery.syntax.layout.table.sassc +0 -0
  284. data/documentation/public/_components/jquery-syntax/.sass-cache/8638ad407c5ea29f6547cf8ac6983da587354889/master.sassc +0 -0
  285. data/documentation/public/_components/jquery-syntax/.sass-cache/b7ab87e6269b4fe89f9475b7a260077391d3567b/jquery.syntax.layout.editor.sassc +0 -0
  286. data/documentation/public/_components/jquery-syntax/.sass-cache/b7ab87e6269b4fe89f9475b7a260077391d3567b/jquery.syntax.layout.fixed.sassc +0 -0
  287. data/documentation/public/_components/jquery-syntax/.sass-cache/b7ab87e6269b4fe89f9475b7a260077391d3567b/jquery.syntax.layout.inline.sassc +0 -0
  288. data/documentation/public/_components/jquery-syntax/.sass-cache/b7ab87e6269b4fe89f9475b7a260077391d3567b/jquery.syntax.layout.plain.sassc +0 -0
  289. data/documentation/public/_components/jquery-syntax/.sass-cache/e82f8cf4c8436da086a4506e01ef78755ebab1ce/master.scssc +0 -0
  290. data/lib/utopia/command/setup.rb +0 -78
@@ -0,0 +1,3304 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Utopia::Path
8
+
9
+ &mdash; Documentation by YARD 0.9.12
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Utopia::Path";
19
+ relpath = '../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../_index.html">Index (P)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../Utopia.html" title="Utopia (module)">Utopia</a></span></span>
41
+ &raquo;
42
+ <span class="title">Path</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Utopia::Path
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Utopia::Path</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+ <dl>
91
+ <dt>Includes:</dt>
92
+ <dd>Comparable</dd>
93
+ </dl>
94
+
95
+
96
+
97
+
98
+
99
+
100
+ <dl>
101
+ <dt>Defined in:</dt>
102
+ <dd>lib/utopia/path.rb<span class="defines">,<br />
103
+ lib/utopia/path/matcher.rb</span>
104
+ </dd>
105
+ </dl>
106
+
107
+ </div>
108
+
109
+ <h2>Overview</h2><div class="docstring">
110
+ <div class="discussion">
111
+ <p>Represents a path as an array of path components. Useful for efficient URL manipulation.</p>
112
+
113
+
114
+ </div>
115
+ </div>
116
+ <div class="tags">
117
+
118
+
119
+ </div><h2>Defined Under Namespace</h2>
120
+ <p class="children">
121
+
122
+
123
+
124
+
125
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Path/Matcher.html" title="Utopia::Path::Matcher (class)">Matcher</a></span>
126
+
127
+
128
+ </p>
129
+
130
+ <h2>Constant Summary</h2>
131
+ <dl class="constants">
132
+
133
+ <dt id="SEPARATOR-constant" class="">SEPARATOR =
134
+
135
+ </dt>
136
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>/</span><span class='tstring_end'>&#39;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
137
+
138
+ </dl>
139
+
140
+
141
+
142
+
143
+ <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
144
+ <ul class="summary">
145
+
146
+ <li class="public ">
147
+ <span class="summary_signature">
148
+
149
+ <a href="#components-instance_method" title="#components (instance method)">#<strong>components</strong> &#x21d2; Object </a>
150
+
151
+
152
+
153
+ </span>
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+ <span class="summary_desc"><div class='inline'><p>Returns the value of attribute components.</p>
167
+ </div></span>
168
+
169
+ </li>
170
+
171
+
172
+ </ul>
173
+
174
+
175
+
176
+
177
+
178
+ <h2>
179
+ Class Method Summary
180
+ <small><a href="#" class="summary_toggle">collapse</a></small>
181
+ </h2>
182
+
183
+ <ul class="summary">
184
+
185
+ <li class="public ">
186
+ <span class="summary_signature">
187
+
188
+ <a href="#[]-class_method" title="[] (class method)">.<strong>[]</strong>(path) &#x21d2; Object </a>
189
+
190
+
191
+
192
+ </span>
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+ <span class="summary_desc"><div class='inline'>
203
+ </div></span>
204
+
205
+ </li>
206
+
207
+
208
+ <li class="public ">
209
+ <span class="summary_signature">
210
+
211
+ <a href="#create-class_method" title="create (class method)">.<strong>create</strong>(path) &#x21d2; Object </a>
212
+
213
+
214
+
215
+ </span>
216
+
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+ <span class="summary_desc"><div class='inline'>
226
+ </div></span>
227
+
228
+ </li>
229
+
230
+
231
+ <li class="public ">
232
+ <span class="summary_signature">
233
+
234
+ <a href="#dump-class_method" title="dump (class method)">.<strong>dump</strong>(instance) &#x21d2; Object </a>
235
+
236
+
237
+
238
+ </span>
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+ <span class="summary_desc"><div class='inline'>
249
+ </div></span>
250
+
251
+ </li>
252
+
253
+
254
+ <li class="public ">
255
+ <span class="summary_signature">
256
+
257
+ <a href="#from_string-class_method" title="from_string (class method)">.<strong>from_string</strong>(string) &#x21d2; Object </a>
258
+
259
+
260
+
261
+ </span>
262
+
263
+
264
+
265
+
266
+
267
+
268
+
269
+
270
+
271
+ <span class="summary_desc"><div class='inline'><p>This constructor takes a string and generates a relative path as efficiently as possible.</p>
272
+ </div></span>
273
+
274
+ </li>
275
+
276
+
277
+ <li class="public ">
278
+ <span class="summary_signature">
279
+
280
+ <a href="#load-class_method" title="load (class method)">.<strong>load</strong>(value) &#x21d2; Object </a>
281
+
282
+
283
+
284
+ </span>
285
+
286
+
287
+
288
+
289
+
290
+
291
+
292
+
293
+
294
+ <span class="summary_desc"><div class='inline'>
295
+ </div></span>
296
+
297
+ </li>
298
+
299
+
300
+ <li class="public ">
301
+ <span class="summary_signature">
302
+
303
+ <a href="#prefix_length-class_method" title="prefix_length (class method)">.<strong>prefix_length</strong>(a, b) &#x21d2; Object </a>
304
+
305
+
306
+
307
+ </span>
308
+
309
+
310
+
311
+
312
+
313
+
314
+
315
+
316
+
317
+ <span class="summary_desc"><div class='inline'><p>Returns the length of the prefix which is shared by two strings.</p>
318
+ </div></span>
319
+
320
+ </li>
321
+
322
+
323
+ <li class="public ">
324
+ <span class="summary_signature">
325
+
326
+ <a href="#root-class_method" title="root (class method)">.<strong>root</strong> &#x21d2; Object </a>
327
+
328
+
329
+
330
+ </span>
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+
340
+ <span class="summary_desc"><div class='inline'>
341
+ </div></span>
342
+
343
+ </li>
344
+
345
+
346
+ <li class="public ">
347
+ <span class="summary_signature">
348
+
349
+ <a href="#shortest_path-class_method" title="shortest_path (class method)">.<strong>shortest_path</strong>(path, root) &#x21d2; Object </a>
350
+
351
+
352
+
353
+ </span>
354
+
355
+
356
+
357
+
358
+
359
+
360
+
361
+
362
+
363
+ <span class="summary_desc"><div class='inline'><p>Return the shortest relative path to get to path from root:.</p>
364
+ </div></span>
365
+
366
+ </li>
367
+
368
+
369
+ <li class="public ">
370
+ <span class="summary_signature">
371
+
372
+ <a href="#split-class_method" title="split (class method)">.<strong>split</strong>(path) &#x21d2; Object </a>
373
+
374
+
375
+
376
+ </span>
377
+
378
+
379
+
380
+
381
+
382
+
383
+
384
+
385
+
386
+ <span class="summary_desc"><div class='inline'>
387
+ </div></span>
388
+
389
+ </li>
390
+
391
+
392
+ <li class="public ">
393
+ <span class="summary_signature">
394
+
395
+ <a href="#unescape-class_method" title="unescape (class method)">.<strong>unescape</strong>(string) &#x21d2; Object </a>
396
+
397
+
398
+
399
+ </span>
400
+
401
+
402
+
403
+
404
+
405
+
406
+
407
+
408
+
409
+ <span class="summary_desc"><div class='inline'><p>Converts ‘+’ into whitespace and hex encoded characters into their equivalent characters.</p>
410
+ </div></span>
411
+
412
+ </li>
413
+
414
+
415
+ </ul>
416
+
417
+ <h2>
418
+ Instance Method Summary
419
+ <small><a href="#" class="summary_toggle">collapse</a></small>
420
+ </h2>
421
+
422
+ <ul class="summary">
423
+
424
+ <li class="public ">
425
+ <span class="summary_signature">
426
+
427
+ <a href="#%2B-instance_method" title="#+ (instance method)">#<strong>+</strong>(other) &#x21d2; Object </a>
428
+
429
+
430
+
431
+ </span>
432
+
433
+
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+ <span class="summary_desc"><div class='inline'>
442
+ </div></span>
443
+
444
+ </li>
445
+
446
+
447
+ <li class="public ">
448
+ <span class="summary_signature">
449
+
450
+ <a href="#--instance_method" title="#- (instance method)">#<strong>-</strong>(other) &#x21d2; Object </a>
451
+
452
+
453
+
454
+ </span>
455
+
456
+
457
+
458
+
459
+
460
+
461
+
462
+
463
+
464
+ <span class="summary_desc"><div class='inline'><p>Computes the difference of the path.</p>
465
+ </div></span>
466
+
467
+ </li>
468
+
469
+
470
+ <li class="public ">
471
+ <span class="summary_signature">
472
+
473
+ <a href="#<=>-instance_method" title="#&lt;=&gt; (instance method)">#<strong>&lt;=&gt;</strong>(other) &#x21d2; Object </a>
474
+
475
+
476
+
477
+ </span>
478
+
479
+
480
+
481
+
482
+
483
+
484
+
485
+
486
+
487
+ <span class="summary_desc"><div class='inline'>
488
+ </div></span>
489
+
490
+ </li>
491
+
492
+
493
+ <li class="public ">
494
+ <span class="summary_signature">
495
+
496
+ <a href="#==-instance_method" title="#== (instance method)">#<strong>==</strong>(other) &#x21d2; Object </a>
497
+
498
+
499
+
500
+ </span>
501
+
502
+
503
+
504
+
505
+
506
+
507
+
508
+
509
+
510
+ <span class="summary_desc"><div class='inline'>
511
+ </div></span>
512
+
513
+ </li>
514
+
515
+
516
+ <li class="public ">
517
+ <span class="summary_signature">
518
+
519
+ <a href="#[]-instance_method" title="#[] (instance method)">#<strong>[]</strong>(index) &#x21d2; Object </a>
520
+
521
+
522
+
523
+ </span>
524
+
525
+
526
+
527
+
528
+
529
+
530
+
531
+
532
+
533
+ <span class="summary_desc"><div class='inline'>
534
+ </div></span>
535
+
536
+ </li>
537
+
538
+
539
+ <li class="public ">
540
+ <span class="summary_signature">
541
+
542
+ <a href="#[]=-instance_method" title="#[]= (instance method)">#<strong>[]=</strong>(index, value) &#x21d2; Object </a>
543
+
544
+
545
+
546
+ </span>
547
+
548
+
549
+
550
+
551
+
552
+
553
+
554
+
555
+
556
+ <span class="summary_desc"><div class='inline'><p>Replaces a named component, indexing as per.</p>
557
+ </div></span>
558
+
559
+ </li>
560
+
561
+
562
+ <li class="public ">
563
+ <span class="summary_signature">
564
+
565
+ <a href="#absolute%3F-instance_method" title="#absolute? (instance method)">#<strong>absolute?</strong> &#x21d2; Boolean </a>
566
+
567
+
568
+
569
+ </span>
570
+
571
+
572
+
573
+
574
+
575
+
576
+
577
+
578
+
579
+ <span class="summary_desc"><div class='inline'>
580
+ </div></span>
581
+
582
+ </li>
583
+
584
+
585
+ <li class="public ">
586
+ <span class="summary_signature">
587
+
588
+ <a href="#ascend-instance_method" title="#ascend (instance method)">#<strong>ascend</strong>(&amp;block) &#x21d2; Object </a>
589
+
590
+
591
+
592
+ </span>
593
+
594
+
595
+
596
+
597
+
598
+
599
+
600
+
601
+
602
+ <span class="summary_desc"><div class='inline'>
603
+ </div></span>
604
+
605
+ </li>
606
+
607
+
608
+ <li class="public ">
609
+ <span class="summary_signature">
610
+
611
+ <a href="#basename-instance_method" title="#basename (instance method)">#<strong>basename</strong> &#x21d2; Object </a>
612
+
613
+
614
+
615
+ </span>
616
+
617
+
618
+
619
+
620
+
621
+
622
+
623
+
624
+
625
+ <span class="summary_desc"><div class='inline'>
626
+ </div></span>
627
+
628
+ </li>
629
+
630
+
631
+ <li class="public ">
632
+ <span class="summary_signature">
633
+
634
+ <a href="#delete_at-instance_method" title="#delete_at (instance method)">#<strong>delete_at</strong>(index) &#x21d2; Object </a>
635
+
636
+
637
+
638
+ </span>
639
+
640
+
641
+
642
+
643
+
644
+
645
+
646
+
647
+
648
+ <span class="summary_desc"><div class='inline'>
649
+ </div></span>
650
+
651
+ </li>
652
+
653
+
654
+ <li class="public ">
655
+ <span class="summary_signature">
656
+
657
+ <a href="#descend-instance_method" title="#descend (instance method)">#<strong>descend</strong>(&amp;block) &#x21d2; Object </a>
658
+
659
+
660
+
661
+ </span>
662
+
663
+
664
+
665
+
666
+
667
+
668
+
669
+
670
+
671
+ <span class="summary_desc"><div class='inline'>
672
+ </div></span>
673
+
674
+ </li>
675
+
676
+
677
+ <li class="public ">
678
+ <span class="summary_signature">
679
+
680
+ <a href="#directory%3F-instance_method" title="#directory? (instance method)">#<strong>directory?</strong> &#x21d2; Boolean </a>
681
+
682
+
683
+
684
+ </span>
685
+
686
+
687
+
688
+
689
+
690
+
691
+
692
+
693
+
694
+ <span class="summary_desc"><div class='inline'>
695
+ </div></span>
696
+
697
+ </li>
698
+
699
+
700
+ <li class="public ">
701
+ <span class="summary_signature">
702
+
703
+ <a href="#dirname-instance_method" title="#dirname (instance method)">#<strong>dirname</strong>(count = 1) &#x21d2; Object </a>
704
+
705
+
706
+
707
+ </span>
708
+
709
+
710
+
711
+
712
+
713
+
714
+
715
+
716
+
717
+ <span class="summary_desc"><div class='inline'>
718
+ </div></span>
719
+
720
+ </li>
721
+
722
+
723
+ <li class="public ">
724
+ <span class="summary_signature">
725
+
726
+ <a href="#dup-instance_method" title="#dup (instance method)">#<strong>dup</strong> &#x21d2; Object </a>
727
+
728
+
729
+
730
+ </span>
731
+
732
+
733
+
734
+
735
+
736
+
737
+
738
+
739
+
740
+ <span class="summary_desc"><div class='inline'>
741
+ </div></span>
742
+
743
+ </li>
744
+
745
+
746
+ <li class="public ">
747
+ <span class="summary_signature">
748
+
749
+ <a href="#empty%3F-instance_method" title="#empty? (instance method)">#<strong>empty?</strong> &#x21d2; Boolean </a>
750
+
751
+
752
+
753
+ </span>
754
+
755
+
756
+
757
+
758
+
759
+
760
+
761
+
762
+
763
+ <span class="summary_desc"><div class='inline'>
764
+ </div></span>
765
+
766
+ </li>
767
+
768
+
769
+ <li class="public ">
770
+ <span class="summary_signature">
771
+
772
+ <a href="#eql%3F-instance_method" title="#eql? (instance method)">#<strong>eql?</strong>(other) &#x21d2; Boolean </a>
773
+
774
+
775
+
776
+ </span>
777
+
778
+
779
+
780
+
781
+
782
+
783
+
784
+
785
+
786
+ <span class="summary_desc"><div class='inline'>
787
+ </div></span>
788
+
789
+ </li>
790
+
791
+
792
+ <li class="public ">
793
+ <span class="summary_signature">
794
+
795
+ <a href="#expand-instance_method" title="#expand (instance method)">#<strong>expand</strong>(root) &#x21d2; Object </a>
796
+
797
+
798
+
799
+ </span>
800
+
801
+
802
+
803
+
804
+
805
+
806
+
807
+
808
+
809
+ <span class="summary_desc"><div class='inline'>
810
+ </div></span>
811
+
812
+ </li>
813
+
814
+
815
+ <li class="public ">
816
+ <span class="summary_signature">
817
+
818
+ <a href="#extension-instance_method" title="#extension (instance method)">#<strong>extension</strong> &#x21d2; Object </a>
819
+
820
+
821
+
822
+ </span>
823
+
824
+
825
+
826
+
827
+
828
+
829
+
830
+
831
+
832
+ <span class="summary_desc"><div class='inline'>
833
+ </div></span>
834
+
835
+ </li>
836
+
837
+
838
+ <li class="public ">
839
+ <span class="summary_signature">
840
+
841
+ <a href="#first-instance_method" title="#first (instance method)">#<strong>first</strong> &#x21d2; Object </a>
842
+
843
+
844
+
845
+ </span>
846
+
847
+
848
+
849
+
850
+
851
+
852
+
853
+
854
+
855
+ <span class="summary_desc"><div class='inline'>
856
+ </div></span>
857
+
858
+ </li>
859
+
860
+
861
+ <li class="public ">
862
+ <span class="summary_signature">
863
+
864
+ <a href="#freeze-instance_method" title="#freeze (instance method)">#<strong>freeze</strong> &#x21d2; Object </a>
865
+
866
+
867
+
868
+ </span>
869
+
870
+
871
+
872
+
873
+
874
+
875
+
876
+
877
+
878
+ <span class="summary_desc"><div class='inline'>
879
+ </div></span>
880
+
881
+ </li>
882
+
883
+
884
+ <li class="public ">
885
+ <span class="summary_signature">
886
+
887
+ <a href="#hash-instance_method" title="#hash (instance method)">#<strong>hash</strong> &#x21d2; Object </a>
888
+
889
+
890
+
891
+ </span>
892
+
893
+
894
+
895
+
896
+
897
+
898
+
899
+
900
+
901
+ <span class="summary_desc"><div class='inline'>
902
+ </div></span>
903
+
904
+ </li>
905
+
906
+
907
+ <li class="public ">
908
+ <span class="summary_signature">
909
+
910
+ <a href="#include%3F-instance_method" title="#include? (instance method)">#<strong>include?</strong>(*args) &#x21d2; Boolean </a>
911
+
912
+
913
+
914
+ </span>
915
+
916
+
917
+
918
+
919
+
920
+
921
+
922
+
923
+
924
+ <span class="summary_desc"><div class='inline'>
925
+ </div></span>
926
+
927
+ </li>
928
+
929
+
930
+ <li class="public ">
931
+ <span class="summary_signature">
932
+
933
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(components = []) &#x21d2; Path </a>
934
+
935
+
936
+
937
+ </span>
938
+
939
+
940
+ <span class="note title constructor">constructor</span>
941
+
942
+
943
+
944
+
945
+
946
+
947
+
948
+
949
+ <span class="summary_desc"><div class='inline'><p>A new instance of Path.</p>
950
+ </div></span>
951
+
952
+ </li>
953
+
954
+
955
+ <li class="public ">
956
+ <span class="summary_signature">
957
+
958
+ <a href="#join-instance_method" title="#join (instance method)">#<strong>join</strong>(other) &#x21d2; Object </a>
959
+
960
+
961
+
962
+ </span>
963
+
964
+
965
+
966
+
967
+
968
+
969
+
970
+
971
+
972
+ <span class="summary_desc"><div class='inline'>
973
+ </div></span>
974
+
975
+ </li>
976
+
977
+
978
+ <li class="public ">
979
+ <span class="summary_signature">
980
+
981
+ <a href="#last-instance_method" title="#last (instance method)">#<strong>last</strong> &#x21d2; Object </a>
982
+
983
+
984
+
985
+ </span>
986
+
987
+
988
+
989
+
990
+
991
+
992
+
993
+
994
+
995
+ <span class="summary_desc"><div class='inline'>
996
+ </div></span>
997
+
998
+ </li>
999
+
1000
+
1001
+ <li class="public ">
1002
+ <span class="summary_signature">
1003
+
1004
+ <a href="#relative%3F-instance_method" title="#relative? (instance method)">#<strong>relative?</strong> &#x21d2; Boolean </a>
1005
+
1006
+
1007
+
1008
+ </span>
1009
+
1010
+
1011
+
1012
+
1013
+
1014
+
1015
+
1016
+
1017
+
1018
+ <span class="summary_desc"><div class='inline'>
1019
+ </div></span>
1020
+
1021
+ </li>
1022
+
1023
+
1024
+ <li class="public ">
1025
+ <span class="summary_signature">
1026
+
1027
+ <a href="#replace-instance_method" title="#replace (instance method)">#<strong>replace</strong>(other_path) &#x21d2; Object </a>
1028
+
1029
+
1030
+
1031
+ </span>
1032
+
1033
+
1034
+
1035
+
1036
+
1037
+
1038
+
1039
+
1040
+
1041
+ <span class="summary_desc"><div class='inline'>
1042
+ </div></span>
1043
+
1044
+ </li>
1045
+
1046
+
1047
+ <li class="public ">
1048
+ <span class="summary_signature">
1049
+
1050
+ <a href="#shortest_path-instance_method" title="#shortest_path (instance method)">#<strong>shortest_path</strong>(root) &#x21d2; Object </a>
1051
+
1052
+
1053
+
1054
+ </span>
1055
+
1056
+
1057
+
1058
+
1059
+
1060
+
1061
+
1062
+
1063
+
1064
+ <span class="summary_desc"><div class='inline'>
1065
+ </div></span>
1066
+
1067
+ </li>
1068
+
1069
+
1070
+ <li class="public ">
1071
+ <span class="summary_signature">
1072
+
1073
+ <a href="#simplify-instance_method" title="#simplify (instance method)">#<strong>simplify</strong> &#x21d2; Object </a>
1074
+
1075
+
1076
+
1077
+ </span>
1078
+
1079
+
1080
+
1081
+
1082
+
1083
+
1084
+
1085
+
1086
+
1087
+ <span class="summary_desc"><div class='inline'>
1088
+ </div></span>
1089
+
1090
+ </li>
1091
+
1092
+
1093
+ <li class="public ">
1094
+ <span class="summary_signature">
1095
+
1096
+ <a href="#split-instance_method" title="#split (instance method)">#<strong>split</strong>(at) &#x21d2; Object </a>
1097
+
1098
+
1099
+
1100
+ </span>
1101
+
1102
+
1103
+
1104
+
1105
+
1106
+
1107
+
1108
+
1109
+
1110
+ <span class="summary_desc"><div class='inline'>
1111
+ </div></span>
1112
+
1113
+ </li>
1114
+
1115
+
1116
+ <li class="public ">
1117
+ <span class="summary_signature">
1118
+
1119
+ <a href="#start_with%3F-instance_method" title="#start_with? (instance method)">#<strong>start_with?</strong>(other) &#x21d2; Boolean </a>
1120
+
1121
+
1122
+
1123
+ </span>
1124
+
1125
+
1126
+
1127
+
1128
+
1129
+
1130
+
1131
+
1132
+
1133
+ <span class="summary_desc"><div class='inline'>
1134
+ </div></span>
1135
+
1136
+ </li>
1137
+
1138
+
1139
+ <li class="public ">
1140
+ <span class="summary_signature">
1141
+
1142
+ <a href="#to_a-instance_method" title="#to_a (instance method)">#<strong>to_a</strong> &#x21d2; Object </a>
1143
+
1144
+
1145
+
1146
+ </span>
1147
+
1148
+
1149
+
1150
+
1151
+
1152
+
1153
+
1154
+
1155
+
1156
+ <span class="summary_desc"><div class='inline'>
1157
+ </div></span>
1158
+
1159
+ </li>
1160
+
1161
+
1162
+ <li class="public ">
1163
+ <span class="summary_signature">
1164
+
1165
+ <a href="#to_absolute-instance_method" title="#to_absolute (instance method)">#<strong>to_absolute</strong> &#x21d2; Object </a>
1166
+
1167
+
1168
+
1169
+ </span>
1170
+
1171
+
1172
+
1173
+
1174
+
1175
+
1176
+
1177
+
1178
+
1179
+ <span class="summary_desc"><div class='inline'>
1180
+ </div></span>
1181
+
1182
+ </li>
1183
+
1184
+
1185
+ <li class="public ">
1186
+ <span class="summary_signature">
1187
+
1188
+ <a href="#to_directory-instance_method" title="#to_directory (instance method)">#<strong>to_directory</strong> &#x21d2; Object </a>
1189
+
1190
+
1191
+
1192
+ </span>
1193
+
1194
+
1195
+
1196
+
1197
+
1198
+
1199
+
1200
+
1201
+
1202
+ <span class="summary_desc"><div class='inline'>
1203
+ </div></span>
1204
+
1205
+ </li>
1206
+
1207
+
1208
+ <li class="public ">
1209
+ <span class="summary_signature">
1210
+
1211
+ <a href="#to_local_path-instance_method" title="#to_local_path (instance method)">#<strong>to_local_path</strong>(separator = File::SEPARATOR) &#x21d2; Object </a>
1212
+
1213
+
1214
+
1215
+ </span>
1216
+
1217
+
1218
+
1219
+
1220
+
1221
+
1222
+
1223
+
1224
+
1225
+ <span class="summary_desc"><div class='inline'>
1226
+ </div></span>
1227
+
1228
+ </li>
1229
+
1230
+
1231
+ <li class="public ">
1232
+ <span class="summary_signature">
1233
+
1234
+ <a href="#to_relative!-instance_method" title="#to_relative! (instance method)">#<strong>to_relative!</strong> &#x21d2; Object </a>
1235
+
1236
+
1237
+
1238
+ </span>
1239
+
1240
+
1241
+
1242
+
1243
+
1244
+
1245
+
1246
+
1247
+
1248
+ <span class="summary_desc"><div class='inline'>
1249
+ </div></span>
1250
+
1251
+ </li>
1252
+
1253
+
1254
+ <li class="public ">
1255
+ <span class="summary_signature">
1256
+
1257
+ <a href="#to_str-instance_method" title="#to_str (instance method)">#<strong>to_str</strong> &#x21d2; Object </a>
1258
+
1259
+
1260
+
1261
+ (also: #to_s)
1262
+
1263
+ </span>
1264
+
1265
+
1266
+
1267
+
1268
+
1269
+
1270
+
1271
+
1272
+
1273
+ <span class="summary_desc"><div class='inline'>
1274
+ </div></span>
1275
+
1276
+ </li>
1277
+
1278
+
1279
+ <li class="public ">
1280
+ <span class="summary_signature">
1281
+
1282
+ <a href="#with_prefix-instance_method" title="#with_prefix (instance method)">#<strong>with_prefix</strong>(*args) &#x21d2; Object </a>
1283
+
1284
+
1285
+
1286
+ </span>
1287
+
1288
+
1289
+
1290
+
1291
+
1292
+
1293
+
1294
+
1295
+
1296
+ <span class="summary_desc"><div class='inline'>
1297
+ </div></span>
1298
+
1299
+ </li>
1300
+
1301
+
1302
+ </ul>
1303
+
1304
+
1305
+
1306
+ <div id="constructor_details" class="method_details_list">
1307
+ <h2>Constructor Details</h2>
1308
+
1309
+ <div class="method_details first">
1310
+ <h3 class="signature first" id="initialize-instance_method">
1311
+
1312
+ #<strong>initialize</strong>(components = []) &#x21d2; <tt><span class='object_link'><a href="" title="Utopia::Path (class)">Path</a></span></tt>
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+ </h3><div class="docstring">
1319
+ <div class="discussion">
1320
+ <p>Returns a new instance of Path</p>
1321
+
1322
+
1323
+ </div>
1324
+ </div>
1325
+ <div class="tags">
1326
+
1327
+
1328
+ </div><table class="source_code">
1329
+ <tr>
1330
+ <td>
1331
+ <pre class="lines">
1332
+
1333
+
1334
+ 28
1335
+ 29
1336
+ 30</pre>
1337
+ </td>
1338
+ <td>
1339
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 28</span>
1340
+
1341
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_components'>components</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1342
+ <span class='ivar'>@components</span> <span class='op'>=</span> <span class='id identifier rubyid_components'>components</span>
1343
+ <span class='kw'>end</span></pre>
1344
+ </td>
1345
+ </tr>
1346
+ </table>
1347
+ </div>
1348
+
1349
+ </div>
1350
+
1351
+ <div id="instance_attr_details" class="attr_details">
1352
+ <h2>Instance Attribute Details</h2>
1353
+
1354
+
1355
+ <span id="components=-instance_method"></span>
1356
+ <div class="method_details first">
1357
+ <h3 class="signature first" id="components-instance_method">
1358
+
1359
+ #<strong>components</strong> &#x21d2; <tt>Object</tt>
1360
+
1361
+
1362
+
1363
+
1364
+
1365
+ </h3><div class="docstring">
1366
+ <div class="discussion">
1367
+ <p>Returns the value of attribute components</p>
1368
+
1369
+
1370
+ </div>
1371
+ </div>
1372
+ <div class="tags">
1373
+
1374
+
1375
+ </div><table class="source_code">
1376
+ <tr>
1377
+ <td>
1378
+ <pre class="lines">
1379
+
1380
+
1381
+ 32
1382
+ 33
1383
+ 34</pre>
1384
+ </td>
1385
+ <td>
1386
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 32</span>
1387
+
1388
+ <span class='kw'>def</span> <span class='id identifier rubyid_components'>components</span>
1389
+ <span class='ivar'>@components</span>
1390
+ <span class='kw'>end</span></pre>
1391
+ </td>
1392
+ </tr>
1393
+ </table>
1394
+ </div>
1395
+
1396
+ </div>
1397
+
1398
+
1399
+ <div id="class_method_details" class="method_details_list">
1400
+ <h2>Class Method Details</h2>
1401
+
1402
+
1403
+ <div class="method_details first">
1404
+ <h3 class="signature first" id="[]-class_method">
1405
+
1406
+ .<strong>[]</strong>(path) &#x21d2; <tt>Object</tt>
1407
+
1408
+
1409
+
1410
+
1411
+
1412
+ </h3><table class="source_code">
1413
+ <tr>
1414
+ <td>
1415
+ <pre class="lines">
1416
+
1417
+
1418
+ 78
1419
+ 79
1420
+ 80</pre>
1421
+ </td>
1422
+ <td>
1423
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 78</span>
1424
+
1425
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='op'>[]</span> <span class='id identifier rubyid_path'>path</span>
1426
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
1427
+ <span class='kw'>end</span></pre>
1428
+ </td>
1429
+ </tr>
1430
+ </table>
1431
+ </div>
1432
+
1433
+ <div class="method_details ">
1434
+ <h3 class="signature " id="create-class_method">
1435
+
1436
+ .<strong>create</strong>(path) &#x21d2; <tt>Object</tt>
1437
+
1438
+
1439
+
1440
+
1441
+
1442
+ </h3><table class="source_code">
1443
+ <tr>
1444
+ <td>
1445
+ <pre class="lines">
1446
+
1447
+
1448
+ 108
1449
+ 109
1450
+ 110
1451
+ 111
1452
+ 112
1453
+ 113
1454
+ 114
1455
+ 115
1456
+ 116
1457
+ 117
1458
+ 118
1459
+ 119</pre>
1460
+ </td>
1461
+ <td>
1462
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 108</span>
1463
+
1464
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
1465
+ <span class='kw'>case</span> <span class='id identifier rubyid_path'>path</span>
1466
+ <span class='kw'>when</span> <span class='const'><span class='object_link'><a href="" title="Utopia::Path (class)">Path</a></span></span>
1467
+ <span class='kw'>return</span> <span class='id identifier rubyid_path'>path</span>
1468
+ <span class='kw'>when</span> <span class='const'>Array</span>
1469
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
1470
+ <span class='kw'>when</span> <span class='const'>String</span>
1471
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_unescape'>unescape</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#SEPARATOR-constant" title="Utopia::Path::SEPARATOR (constant)">SEPARATOR</a></span></span><span class='comma'>,</span> <span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span><span class='rparen'>)</span>
1472
+ <span class='kw'>else</span>
1473
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_path'>path</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1474
+ <span class='kw'>end</span>
1475
+ <span class='kw'>end</span></pre>
1476
+ </td>
1477
+ </tr>
1478
+ </table>
1479
+ </div>
1480
+
1481
+ <div class="method_details ">
1482
+ <h3 class="signature " id="dump-class_method">
1483
+
1484
+ .<strong>dump</strong>(instance) &#x21d2; <tt>Object</tt>
1485
+
1486
+
1487
+
1488
+
1489
+
1490
+ </h3><table class="source_code">
1491
+ <tr>
1492
+ <td>
1493
+ <pre class="lines">
1494
+
1495
+
1496
+ 104
1497
+ 105
1498
+ 106</pre>
1499
+ </td>
1500
+ <td>
1501
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 104</span>
1502
+
1503
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_dump'>dump</span><span class='lparen'>(</span><span class='id identifier rubyid_instance'>instance</span><span class='rparen'>)</span>
1504
+ <span class='id identifier rubyid_instance'>instance</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='kw'>if</span> <span class='id identifier rubyid_instance'>instance</span>
1505
+ <span class='kw'>end</span></pre>
1506
+ </td>
1507
+ </tr>
1508
+ </table>
1509
+ </div>
1510
+
1511
+ <div class="method_details ">
1512
+ <h3 class="signature " id="from_string-class_method">
1513
+
1514
+ .<strong>from_string</strong>(string) &#x21d2; <tt>Object</tt>
1515
+
1516
+
1517
+
1518
+
1519
+
1520
+ </h3><div class="docstring">
1521
+ <div class="discussion">
1522
+ <p>This constructor takes a string and generates a relative path as efficiently as possible. This is a direct entry point for all controller invocations so it’s designed to suit the requirements of that function.</p>
1523
+
1524
+
1525
+ </div>
1526
+ </div>
1527
+ <div class="tags">
1528
+
1529
+
1530
+ </div><table class="source_code">
1531
+ <tr>
1532
+ <td>
1533
+ <pre class="lines">
1534
+
1535
+
1536
+ 96
1537
+ 97
1538
+ 98</pre>
1539
+ </td>
1540
+ <td>
1541
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 96</span>
1542
+
1543
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_from_string'>from_string</span><span class='lparen'>(</span><span class='id identifier rubyid_string'>string</span><span class='rparen'>)</span>
1544
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_unescape'>unescape</span><span class='lparen'>(</span><span class='id identifier rubyid_string'>string</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#SEPARATOR-constant" title="Utopia::Path::SEPARATOR (constant)">SEPARATOR</a></span></span><span class='comma'>,</span> <span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span><span class='rparen'>)</span>
1545
+ <span class='kw'>end</span></pre>
1546
+ </td>
1547
+ </tr>
1548
+ </table>
1549
+ </div>
1550
+
1551
+ <div class="method_details ">
1552
+ <h3 class="signature " id="load-class_method">
1553
+
1554
+ .<strong>load</strong>(value) &#x21d2; <tt>Object</tt>
1555
+
1556
+
1557
+
1558
+
1559
+
1560
+ </h3><table class="source_code">
1561
+ <tr>
1562
+ <td>
1563
+ <pre class="lines">
1564
+
1565
+
1566
+ 100
1567
+ 101
1568
+ 102</pre>
1569
+ </td>
1570
+ <td>
1571
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 100</span>
1572
+
1573
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_load'>load</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1574
+ <span class='id identifier rubyid_from_string'>from_string</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span>
1575
+ <span class='kw'>end</span></pre>
1576
+ </td>
1577
+ </tr>
1578
+ </table>
1579
+ </div>
1580
+
1581
+ <div class="method_details ">
1582
+ <h3 class="signature " id="prefix_length-class_method">
1583
+
1584
+ .<strong>prefix_length</strong>(a, b) &#x21d2; <tt>Object</tt>
1585
+
1586
+
1587
+
1588
+
1589
+
1590
+ </h3><div class="docstring">
1591
+ <div class="discussion">
1592
+ <p>Returns the length of the prefix which is shared by two strings.</p>
1593
+
1594
+
1595
+ </div>
1596
+ </div>
1597
+ <div class="tags">
1598
+
1599
+
1600
+ </div><table class="source_code">
1601
+ <tr>
1602
+ <td>
1603
+ <pre class="lines">
1604
+
1605
+
1606
+ 49
1607
+ 50
1608
+ 51</pre>
1609
+ </td>
1610
+ <td>
1611
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 49</span>
1612
+
1613
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_prefix_length'>prefix_length</span><span class='lparen'>(</span><span class='id identifier rubyid_a'>a</span><span class='comma'>,</span> <span class='id identifier rubyid_b'>b</span><span class='rparen'>)</span>
1614
+ <span class='lbracket'>[</span><span class='id identifier rubyid_a'>a</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='comma'>,</span> <span class='id identifier rubyid_b'>b</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_min'>min</span><span class='period'>.</span><span class='id identifier rubyid_times'>times</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_i'>i</span><span class='op'>|</span> <span class='kw'>return</span> <span class='id identifier rubyid_i'>i</span> <span class='kw'>if</span> <span class='id identifier rubyid_a'>a</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='id identifier rubyid_b'>b</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='rbracket'>]</span><span class='rbrace'>}</span>
1615
+ <span class='kw'>end</span></pre>
1616
+ </td>
1617
+ </tr>
1618
+ </table>
1619
+ </div>
1620
+
1621
+ <div class="method_details ">
1622
+ <h3 class="signature " id="root-class_method">
1623
+
1624
+ .<strong>root</strong> &#x21d2; <tt>Object</tt>
1625
+
1626
+
1627
+
1628
+
1629
+
1630
+ </h3><table class="source_code">
1631
+ <tr>
1632
+ <td>
1633
+ <pre class="lines">
1634
+
1635
+
1636
+ 44
1637
+ 45
1638
+ 46</pre>
1639
+ </td>
1640
+ <td>
1641
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 44</span>
1642
+
1643
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span>
1644
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
1645
+ <span class='kw'>end</span></pre>
1646
+ </td>
1647
+ </tr>
1648
+ </table>
1649
+ </div>
1650
+
1651
+ <div class="method_details ">
1652
+ <h3 class="signature " id="shortest_path-class_method">
1653
+
1654
+ .<strong>shortest_path</strong>(path, root) &#x21d2; <tt>Object</tt>
1655
+
1656
+
1657
+
1658
+
1659
+
1660
+ </h3><div class="docstring">
1661
+ <div class="discussion">
1662
+ <p>Return the shortest relative path to get to path from root:</p>
1663
+
1664
+
1665
+ </div>
1666
+ </div>
1667
+ <div class="tags">
1668
+
1669
+
1670
+ </div><table class="source_code">
1671
+ <tr>
1672
+ <td>
1673
+ <pre class="lines">
1674
+
1675
+
1676
+ 54
1677
+ 55
1678
+ 56
1679
+ 57
1680
+ 58
1681
+ 59
1682
+ 60
1683
+ 61
1684
+ 62
1685
+ 63
1686
+ 64
1687
+ 65</pre>
1688
+ </td>
1689
+ <td>
1690
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 54</span>
1691
+
1692
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_shortest_path'>shortest_path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='rparen'>)</span>
1693
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
1694
+ <span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_dirname'>dirname</span>
1695
+
1696
+ <span class='comment'># Find the common prefix:
1697
+ </span> <span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='id identifier rubyid_prefix_length'>prefix_length</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='comma'>,</span> <span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='int'>0</span>
1698
+
1699
+ <span class='comment'># The difference between the root path and the required path, taking into account the common prefix:
1700
+ </span> <span class='id identifier rubyid_up'>up</span> <span class='op'>=</span> <span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>-</span> <span class='id identifier rubyid_i'>i</span>
1701
+
1702
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>..</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='op'>*</span> <span class='id identifier rubyid_up'>up</span> <span class='op'>+</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='op'>..</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1703
+ <span class='kw'>end</span></pre>
1704
+ </td>
1705
+ </tr>
1706
+ </table>
1707
+ </div>
1708
+
1709
+ <div class="method_details ">
1710
+ <h3 class="signature " id="split-class_method">
1711
+
1712
+ .<strong>split</strong>(path) &#x21d2; <tt>Object</tt>
1713
+
1714
+
1715
+
1716
+
1717
+
1718
+ </h3><table class="source_code">
1719
+ <tr>
1720
+ <td>
1721
+ <pre class="lines">
1722
+
1723
+
1724
+ 82
1725
+ 83
1726
+ 84
1727
+ 85
1728
+ 86
1729
+ 87
1730
+ 88
1731
+ 89
1732
+ 90
1733
+ 91
1734
+ 92
1735
+ 93</pre>
1736
+ </td>
1737
+ <td>
1738
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 82</span>
1739
+
1740
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
1741
+ <span class='kw'>case</span> <span class='id identifier rubyid_path'>path</span>
1742
+ <span class='kw'>when</span> <span class='const'><span class='object_link'><a href="" title="Utopia::Path (class)">Path</a></span></span>
1743
+ <span class='kw'>return</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span>
1744
+ <span class='kw'>when</span> <span class='const'>Array</span>
1745
+ <span class='kw'>return</span> <span class='id identifier rubyid_path'>path</span>
1746
+ <span class='kw'>when</span> <span class='const'>String</span>
1747
+ <span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span>
1748
+ <span class='kw'>else</span>
1749
+ <span class='lbracket'>[</span><span class='id identifier rubyid_path'>path</span><span class='rbracket'>]</span>
1750
+ <span class='kw'>end</span>
1751
+ <span class='kw'>end</span></pre>
1752
+ </td>
1753
+ </tr>
1754
+ </table>
1755
+ </div>
1756
+
1757
+ <div class="method_details ">
1758
+ <h3 class="signature " id="unescape-class_method">
1759
+
1760
+ .<strong>unescape</strong>(string) &#x21d2; <tt>Object</tt>
1761
+
1762
+
1763
+
1764
+
1765
+
1766
+ </h3><div class="docstring">
1767
+ <div class="discussion">
1768
+ <p>Converts ‘+’ into whitespace and hex encoded characters into their equivalent characters.</p>
1769
+
1770
+
1771
+ </div>
1772
+ </div>
1773
+ <div class="tags">
1774
+
1775
+
1776
+ </div><table class="source_code">
1777
+ <tr>
1778
+ <td>
1779
+ <pre class="lines">
1780
+
1781
+
1782
+ 72
1783
+ 73
1784
+ 74
1785
+ 75
1786
+ 76</pre>
1787
+ </td>
1788
+ <td>
1789
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 72</span>
1790
+
1791
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_unescape'>unescape</span><span class='lparen'>(</span><span class='id identifier rubyid_string'>string</span><span class='rparen'>)</span>
1792
+ <span class='id identifier rubyid_string'>string</span><span class='period'>.</span><span class='id identifier rubyid_tr'>tr</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>+</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> </span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>((?:%[0-9a-fA-F]{2})+)</span><span class='regexp_end'>/n</span></span><span class='rparen'>)</span> <span class='lbrace'>{</span>
1793
+ <span class='lbracket'>[</span><span class='backref'>$1</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>%</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>H*</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1794
+ <span class='rbrace'>}</span>
1795
+ <span class='kw'>end</span></pre>
1796
+ </td>
1797
+ </tr>
1798
+ </table>
1799
+ </div>
1800
+
1801
+ </div>
1802
+
1803
+ <div id="instance_method_details" class="method_details_list">
1804
+ <h2>Instance Method Details</h2>
1805
+
1806
+
1807
+ <div class="method_details first">
1808
+ <h3 class="signature first" id="+-instance_method">
1809
+
1810
+ #<strong>+</strong>(other) &#x21d2; <tt>Object</tt>
1811
+
1812
+
1813
+
1814
+
1815
+
1816
+ </h3><table class="source_code">
1817
+ <tr>
1818
+ <td>
1819
+ <pre class="lines">
1820
+
1821
+
1822
+ 183
1823
+ 184
1824
+ 185
1825
+ 186
1826
+ 187
1827
+ 188
1828
+ 189
1829
+ 190
1830
+ 191
1831
+ 192
1832
+ 193
1833
+ 194
1834
+ 195
1835
+ 196
1836
+ 197</pre>
1837
+ </td>
1838
+ <td>
1839
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 183</span>
1840
+
1841
+ <span class='kw'>def</span> <span class='op'>+</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span>
1842
+ <span class='kw'>if</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span> <span class='const'><span class='object_link'><a href="" title="Utopia::Path (class)">Path</a></span></span>
1843
+ <span class='kw'>if</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_absolute?'>absolute?</span>
1844
+ <span class='kw'>return</span> <span class='id identifier rubyid_other'>other</span>
1845
+ <span class='kw'>else</span>
1846
+ <span class='kw'>return</span> <span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='rparen'>)</span>
1847
+ <span class='kw'>end</span>
1848
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span> <span class='const'>Array</span>
1849
+ <span class='kw'>return</span> <span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span>
1850
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span> <span class='const'>String</span>
1851
+ <span class='kw'>return</span> <span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#SEPARATOR-constant" title="Utopia::Path::SEPARATOR (constant)">SEPARATOR</a></span></span><span class='comma'>,</span> <span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span><span class='rparen'>)</span>
1852
+ <span class='kw'>else</span>
1853
+ <span class='kw'>return</span> <span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1854
+ <span class='kw'>end</span>
1855
+ <span class='kw'>end</span></pre>
1856
+ </td>
1857
+ </tr>
1858
+ </table>
1859
+ </div>
1860
+
1861
+ <div class="method_details ">
1862
+ <h3 class="signature " id="--instance_method">
1863
+
1864
+ #<strong>-</strong>(other) &#x21d2; <tt>Object</tt>
1865
+
1866
+
1867
+
1868
+
1869
+
1870
+ </h3><div class="docstring">
1871
+ <div class="discussion">
1872
+ <p>Computes the difference of the path.
1873
+ /a/b/c - /a/b -&gt; c
1874
+ a/b/c - a/b -&gt; c</p>
1875
+
1876
+
1877
+ </div>
1878
+ </div>
1879
+ <div class="tags">
1880
+
1881
+
1882
+ </div><table class="source_code">
1883
+ <tr>
1884
+ <td>
1885
+ <pre class="lines">
1886
+
1887
+
1888
+ 206
1889
+ 207
1890
+ 208
1891
+ 209
1892
+ 210
1893
+ 211
1894
+ 212
1895
+ 213
1896
+ 214
1897
+ 215
1898
+ 216</pre>
1899
+ </td>
1900
+ <td>
1901
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 206</span>
1902
+
1903
+ <span class='kw'>def</span> <span class='op'>-</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span>
1904
+ <span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='int'>0</span>
1905
+
1906
+ <span class='kw'>while</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>&lt;</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
1907
+ <span class='kw'>break</span> <span class='kw'>if</span> <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='rbracket'>]</span>
1908
+
1909
+ <span class='id identifier rubyid_i'>i</span> <span class='op'>+=</span> <span class='int'>1</span>
1910
+ <span class='kw'>end</span>
1911
+
1912
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='comma'>,</span><span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='rbracket'>]</span><span class='rparen'>)</span>
1913
+ <span class='kw'>end</span></pre>
1914
+ </td>
1915
+ </tr>
1916
+ </table>
1917
+ </div>
1918
+
1919
+ <div class="method_details ">
1920
+ <h3 class="signature " id="<=>-instance_method">
1921
+
1922
+ #<strong>&lt;=&gt;</strong>(other) &#x21d2; <tt>Object</tt>
1923
+
1924
+
1925
+
1926
+
1927
+
1928
+ </h3><table class="source_code">
1929
+ <tr>
1930
+ <td>
1931
+ <pre class="lines">
1932
+
1933
+
1934
+ 296
1935
+ 297
1936
+ 298</pre>
1937
+ </td>
1938
+ <td>
1939
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 296</span>
1940
+
1941
+ <span class='kw'>def</span> <span class='op'>&lt;=&gt;</span> <span class='id identifier rubyid_other'>other</span>
1942
+ <span class='ivar'>@components</span> <span class='op'>&lt;=&gt;</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span>
1943
+ <span class='kw'>end</span></pre>
1944
+ </td>
1945
+ </tr>
1946
+ </table>
1947
+ </div>
1948
+
1949
+ <div class="method_details ">
1950
+ <h3 class="signature " id="==-instance_method">
1951
+
1952
+ #<strong>==</strong>(other) &#x21d2; <tt>Object</tt>
1953
+
1954
+
1955
+
1956
+
1957
+
1958
+ </h3><table class="source_code">
1959
+ <tr>
1960
+ <td>
1961
+ <pre class="lines">
1962
+
1963
+
1964
+ 308
1965
+ 309
1966
+ 310
1967
+ 311
1968
+ 312
1969
+ 313
1970
+ 314
1971
+ 315
1972
+ 316</pre>
1973
+ </td>
1974
+ <td>
1975
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 308</span>
1976
+
1977
+ <span class='kw'>def</span> <span class='op'>==</span> <span class='id identifier rubyid_other'>other</span>
1978
+ <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='id identifier rubyid_other'>other</span>
1979
+
1980
+ <span class='kw'>case</span> <span class='id identifier rubyid_other'>other</span>
1981
+ <span class='kw'>when</span> <span class='const'>String</span> <span class='kw'>then</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>==</span> <span class='id identifier rubyid_other'>other</span>
1982
+ <span class='kw'>when</span> <span class='const'>Array</span> <span class='kw'>then</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span> <span class='op'>==</span> <span class='id identifier rubyid_other'>other</span>
1983
+ <span class='kw'>else</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@components</span> <span class='op'>==</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span>
1984
+ <span class='kw'>end</span>
1985
+ <span class='kw'>end</span></pre>
1986
+ </td>
1987
+ </tr>
1988
+ </table>
1989
+ </div>
1990
+
1991
+ <div class="method_details ">
1992
+ <h3 class="signature " id="[]-instance_method">
1993
+
1994
+ #<strong>[]</strong>(index) &#x21d2; <tt>Object</tt>
1995
+
1996
+
1997
+
1998
+
1999
+
2000
+ </h3><table class="source_code">
2001
+ <tr>
2002
+ <td>
2003
+ <pre class="lines">
2004
+
2005
+
2006
+ 326
2007
+ 327
2008
+ 328</pre>
2009
+ </td>
2010
+ <td>
2011
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 326</span>
2012
+
2013
+ <span class='kw'>def</span> <span class='op'>[]</span> <span class='id identifier rubyid_index'>index</span>
2014
+ <span class='kw'>return</span> <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_component_offset'>component_offset</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span><span class='rbracket'>]</span>
2015
+ <span class='kw'>end</span></pre>
2016
+ </td>
2017
+ </tr>
2018
+ </table>
2019
+ </div>
2020
+
2021
+ <div class="method_details ">
2022
+ <h3 class="signature " id="[]=-instance_method">
2023
+
2024
+ #<strong>[]=</strong>(index, value) &#x21d2; <tt>Object</tt>
2025
+
2026
+
2027
+
2028
+
2029
+
2030
+ </h3><div class="docstring">
2031
+ <div class="discussion">
2032
+ <p>Replaces a named component, indexing as per</p>
2033
+
2034
+
2035
+ </div>
2036
+ </div>
2037
+ <div class="tags">
2038
+
2039
+
2040
+ </div><table class="source_code">
2041
+ <tr>
2042
+ <td>
2043
+ <pre class="lines">
2044
+
2045
+
2046
+ 331
2047
+ 332
2048
+ 333</pre>
2049
+ </td>
2050
+ <td>
2051
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 331</span>
2052
+
2053
+ <span class='kw'>def</span> <span class='op'>[]=</span> <span class='id identifier rubyid_index'>index</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span>
2054
+ <span class='kw'>return</span> <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_component_offset'>component_offset</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span>
2055
+ <span class='kw'>end</span></pre>
2056
+ </td>
2057
+ </tr>
2058
+ </table>
2059
+ </div>
2060
+
2061
+ <div class="method_details ">
2062
+ <h3 class="signature " id="absolute?-instance_method">
2063
+
2064
+ #<strong>absolute?</strong> &#x21d2; <tt>Boolean</tt>
2065
+
2066
+
2067
+
2068
+
2069
+
2070
+ </h3><div class="docstring">
2071
+ <div class="discussion">
2072
+
2073
+
2074
+
2075
+ </div>
2076
+ </div>
2077
+ <div class="tags">
2078
+
2079
+ <p class="tag_title">Returns:</p>
2080
+ <ul class="return">
2081
+
2082
+ <li>
2083
+
2084
+
2085
+ <span class='type'>(<tt>Boolean</tt>)</span>
2086
+
2087
+
2088
+
2089
+ </li>
2090
+
2091
+ </ul>
2092
+
2093
+ </div><table class="source_code">
2094
+ <tr>
2095
+ <td>
2096
+ <pre class="lines">
2097
+
2098
+
2099
+ 145
2100
+ 146
2101
+ 147</pre>
2102
+ </td>
2103
+ <td>
2104
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 145</span>
2105
+
2106
+ <span class='kw'>def</span> <span class='id identifier rubyid_absolute?'>absolute?</span>
2107
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
2108
+ <span class='kw'>end</span></pre>
2109
+ </td>
2110
+ </tr>
2111
+ </table>
2112
+ </div>
2113
+
2114
+ <div class="method_details ">
2115
+ <h3 class="signature " id="ascend-instance_method">
2116
+
2117
+ #<strong>ascend</strong>(&amp;block) &#x21d2; <tt>Object</tt>
2118
+
2119
+
2120
+
2121
+
2122
+
2123
+ </h3><table class="source_code">
2124
+ <tr>
2125
+ <td>
2126
+ <pre class="lines">
2127
+
2128
+
2129
+ 268
2130
+ 269
2131
+ 270
2132
+ 271
2133
+ 272
2134
+ 273
2135
+ 274
2136
+ 275
2137
+ 276
2138
+ 277
2139
+ 278</pre>
2140
+ </td>
2141
+ <td>
2142
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 268</span>
2143
+
2144
+ <span class='kw'>def</span> <span class='id identifier rubyid_ascend'>ascend</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
2145
+ <span class='kw'>return</span> <span class='id identifier rubyid_to_enum'>to_enum</span><span class='lparen'>(</span><span class='symbol'>:ascend</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
2146
+
2147
+ <span class='id identifier rubyid_components'>components</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span>
2148
+
2149
+ <span class='kw'>while</span> <span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
2150
+ <span class='kw'>yield</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='rparen'>)</span>
2151
+
2152
+ <span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span>
2153
+ <span class='kw'>end</span>
2154
+ <span class='kw'>end</span></pre>
2155
+ </td>
2156
+ </tr>
2157
+ </table>
2158
+ </div>
2159
+
2160
+ <div class="method_details ">
2161
+ <h3 class="signature " id="basename-instance_method">
2162
+
2163
+ #<strong>basename</strong> &#x21d2; <tt>Object</tt>
2164
+
2165
+
2166
+
2167
+
2168
+
2169
+ </h3><table class="source_code">
2170
+ <tr>
2171
+ <td>
2172
+ <pre class="lines">
2173
+
2174
+
2175
+ 234
2176
+ 235
2177
+ 236
2178
+ 237
2179
+ 238</pre>
2180
+ </td>
2181
+ <td>
2182
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 234</span>
2183
+
2184
+ <span class='kw'>def</span> <span class='id identifier rubyid_basename'>basename</span>
2185
+ <span class='id identifier rubyid_basename'>basename</span><span class='comma'>,</span> <span class='id identifier rubyid__'>_</span> <span class='op'>=</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='int'>2</span><span class='rparen'>)</span>
2186
+
2187
+ <span class='kw'>return</span> <span class='id identifier rubyid_basename'>basename</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
2188
+ <span class='kw'>end</span></pre>
2189
+ </td>
2190
+ </tr>
2191
+ </table>
2192
+ </div>
2193
+
2194
+ <div class="method_details ">
2195
+ <h3 class="signature " id="delete_at-instance_method">
2196
+
2197
+ #<strong>delete_at</strong>(index) &#x21d2; <tt>Object</tt>
2198
+
2199
+
2200
+
2201
+
2202
+
2203
+ </h3><table class="source_code">
2204
+ <tr>
2205
+ <td>
2206
+ <pre class="lines">
2207
+
2208
+
2209
+ 335
2210
+ 336
2211
+ 337</pre>
2212
+ </td>
2213
+ <td>
2214
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 335</span>
2215
+
2216
+ <span class='kw'>def</span> <span class='id identifier rubyid_delete_at'>delete_at</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
2217
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_delete_at'>delete_at</span><span class='lparen'>(</span><span class='id identifier rubyid_component_offset'>component_offset</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span><span class='rparen'>)</span>
2218
+ <span class='kw'>end</span></pre>
2219
+ </td>
2220
+ </tr>
2221
+ </table>
2222
+ </div>
2223
+
2224
+ <div class="method_details ">
2225
+ <h3 class="signature " id="descend-instance_method">
2226
+
2227
+ #<strong>descend</strong>(&amp;block) &#x21d2; <tt>Object</tt>
2228
+
2229
+
2230
+
2231
+
2232
+
2233
+ </h3><table class="source_code">
2234
+ <tr>
2235
+ <td>
2236
+ <pre class="lines">
2237
+
2238
+
2239
+ 256
2240
+ 257
2241
+ 258
2242
+ 259
2243
+ 260
2244
+ 261
2245
+ 262
2246
+ 263
2247
+ 264
2248
+ 265
2249
+ 266</pre>
2250
+ </td>
2251
+ <td>
2252
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 256</span>
2253
+
2254
+ <span class='kw'>def</span> <span class='id identifier rubyid_descend'>descend</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
2255
+ <span class='kw'>return</span> <span class='id identifier rubyid_to_enum'>to_enum</span><span class='lparen'>(</span><span class='symbol'>:descend</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
2256
+
2257
+ <span class='id identifier rubyid_components'>components</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
2258
+
2259
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_component'>component</span><span class='op'>|</span>
2260
+ <span class='id identifier rubyid_components'>components</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_component'>component</span>
2261
+
2262
+ <span class='kw'>yield</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='rparen'>)</span>
2263
+ <span class='kw'>end</span>
2264
+ <span class='kw'>end</span></pre>
2265
+ </td>
2266
+ </tr>
2267
+ </table>
2268
+ </div>
2269
+
2270
+ <div class="method_details ">
2271
+ <h3 class="signature " id="directory?-instance_method">
2272
+
2273
+ #<strong>directory?</strong> &#x21d2; <tt>Boolean</tt>
2274
+
2275
+
2276
+
2277
+
2278
+
2279
+ </h3><div class="docstring">
2280
+ <div class="discussion">
2281
+
2282
+
2283
+
2284
+ </div>
2285
+ </div>
2286
+ <div class="tags">
2287
+
2288
+ <p class="tag_title">Returns:</p>
2289
+ <ul class="return">
2290
+
2291
+ <li>
2292
+
2293
+
2294
+ <span class='type'>(<tt>Boolean</tt>)</span>
2295
+
2296
+
2297
+
2298
+ </li>
2299
+
2300
+ </ul>
2301
+
2302
+ </div><table class="source_code">
2303
+ <tr>
2304
+ <td>
2305
+ <pre class="lines">
2306
+
2307
+
2308
+ 129
2309
+ 130
2310
+ 131</pre>
2311
+ </td>
2312
+ <td>
2313
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 129</span>
2314
+
2315
+ <span class='kw'>def</span> <span class='id identifier rubyid_directory?'>directory?</span>
2316
+ <span class='kw'>return</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
2317
+ <span class='kw'>end</span></pre>
2318
+ </td>
2319
+ </tr>
2320
+ </table>
2321
+ </div>
2322
+
2323
+ <div class="method_details ">
2324
+ <h3 class="signature " id="dirname-instance_method">
2325
+
2326
+ #<strong>dirname</strong>(count = 1) &#x21d2; <tt>Object</tt>
2327
+
2328
+
2329
+
2330
+
2331
+
2332
+ </h3><table class="source_code">
2333
+ <tr>
2334
+ <td>
2335
+ <pre class="lines">
2336
+
2337
+
2338
+ 246
2339
+ 247
2340
+ 248
2341
+ 249
2342
+ 250</pre>
2343
+ </td>
2344
+ <td>
2345
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 246</span>
2346
+
2347
+ <span class='kw'>def</span> <span class='id identifier rubyid_dirname'>dirname</span><span class='lparen'>(</span><span class='id identifier rubyid_count'>count</span> <span class='op'>=</span> <span class='int'>1</span><span class='rparen'>)</span>
2348
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@components</span><span class='lbracket'>[</span><span class='int'>0</span><span class='op'>...</span><span class='op'>-</span><span class='id identifier rubyid_count'>count</span><span class='rbracket'>]</span><span class='rparen'>)</span>
2349
+
2350
+ <span class='kw'>return</span> <span class='id identifier rubyid_absolute?'>absolute?</span> <span class='op'>?</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_to_absolute'>to_absolute</span> <span class='op'>:</span> <span class='id identifier rubyid_path'>path</span>
2351
+ <span class='kw'>end</span></pre>
2352
+ </td>
2353
+ </tr>
2354
+ </table>
2355
+ </div>
2356
+
2357
+ <div class="method_details ">
2358
+ <h3 class="signature " id="dup-instance_method">
2359
+
2360
+ #<strong>dup</strong> &#x21d2; <tt>Object</tt>
2361
+
2362
+
2363
+
2364
+
2365
+
2366
+ </h3><table class="source_code">
2367
+ <tr>
2368
+ <td>
2369
+ <pre class="lines">
2370
+
2371
+
2372
+ 292
2373
+ 293
2374
+ 294</pre>
2375
+ </td>
2376
+ <td>
2377
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 292</span>
2378
+
2379
+ <span class='kw'>def</span> <span class='id identifier rubyid_dup'>dup</span>
2380
+ <span class='kw'>return</span> <span class='const'><span class='object_link'><a href="" title="Utopia::Path (class)">Path</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="Utopia::Path#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='rparen'>)</span>
2381
+ <span class='kw'>end</span></pre>
2382
+ </td>
2383
+ </tr>
2384
+ </table>
2385
+ </div>
2386
+
2387
+ <div class="method_details ">
2388
+ <h3 class="signature " id="empty?-instance_method">
2389
+
2390
+ #<strong>empty?</strong> &#x21d2; <tt>Boolean</tt>
2391
+
2392
+
2393
+
2394
+
2395
+
2396
+ </h3><div class="docstring">
2397
+ <div class="discussion">
2398
+
2399
+
2400
+
2401
+ </div>
2402
+ </div>
2403
+ <div class="tags">
2404
+
2405
+ <p class="tag_title">Returns:</p>
2406
+ <ul class="return">
2407
+
2408
+ <li>
2409
+
2410
+
2411
+ <span class='type'>(<tt>Boolean</tt>)</span>
2412
+
2413
+
2414
+
2415
+ </li>
2416
+
2417
+ </ul>
2418
+
2419
+ </div><table class="source_code">
2420
+ <tr>
2421
+ <td>
2422
+ <pre class="lines">
2423
+
2424
+
2425
+ 40
2426
+ 41
2427
+ 42</pre>
2428
+ </td>
2429
+ <td>
2430
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 40</span>
2431
+
2432
+ <span class='kw'>def</span> <span class='id identifier rubyid_empty?'>empty?</span>
2433
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
2434
+ <span class='kw'>end</span></pre>
2435
+ </td>
2436
+ </tr>
2437
+ </table>
2438
+ </div>
2439
+
2440
+ <div class="method_details ">
2441
+ <h3 class="signature " id="eql?-instance_method">
2442
+
2443
+ #<strong>eql?</strong>(other) &#x21d2; <tt>Boolean</tt>
2444
+
2445
+
2446
+
2447
+
2448
+
2449
+ </h3><div class="docstring">
2450
+ <div class="discussion">
2451
+
2452
+
2453
+
2454
+ </div>
2455
+ </div>
2456
+ <div class="tags">
2457
+
2458
+ <p class="tag_title">Returns:</p>
2459
+ <ul class="return">
2460
+
2461
+ <li>
2462
+
2463
+
2464
+ <span class='type'>(<tt>Boolean</tt>)</span>
2465
+
2466
+
2467
+
2468
+ </li>
2469
+
2470
+ </ul>
2471
+
2472
+ </div><table class="source_code">
2473
+ <tr>
2474
+ <td>
2475
+ <pre class="lines">
2476
+
2477
+
2478
+ 300
2479
+ 301
2480
+ 302</pre>
2481
+ </td>
2482
+ <td>
2483
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 300</span>
2484
+
2485
+ <span class='kw'>def</span> <span class='id identifier rubyid_eql?'>eql?</span> <span class='id identifier rubyid_other'>other</span>
2486
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_eql?'>eql?</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='rparen'>)</span> <span class='kw'>and</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_eql?'>eql?</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='rparen'>)</span>
2487
+ <span class='kw'>end</span></pre>
2488
+ </td>
2489
+ </tr>
2490
+ </table>
2491
+ </div>
2492
+
2493
+ <div class="method_details ">
2494
+ <h3 class="signature " id="expand-instance_method">
2495
+
2496
+ #<strong>expand</strong>(root) &#x21d2; <tt>Object</tt>
2497
+
2498
+
2499
+
2500
+
2501
+
2502
+ </h3><table class="source_code">
2503
+ <tr>
2504
+ <td>
2505
+ <pre class="lines">
2506
+
2507
+
2508
+ 179
2509
+ 180
2510
+ 181</pre>
2511
+ </td>
2512
+ <td>
2513
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 179</span>
2514
+
2515
+ <span class='kw'>def</span> <span class='id identifier rubyid_expand'>expand</span><span class='lparen'>(</span><span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='rparen'>)</span>
2516
+ <span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span> <span class='op'>+</span> <span class='kw'>self</span>
2517
+ <span class='kw'>end</span></pre>
2518
+ </td>
2519
+ </tr>
2520
+ </table>
2521
+ </div>
2522
+
2523
+ <div class="method_details ">
2524
+ <h3 class="signature " id="extension-instance_method">
2525
+
2526
+ #<strong>extension</strong> &#x21d2; <tt>Object</tt>
2527
+
2528
+
2529
+
2530
+
2531
+
2532
+ </h3><table class="source_code">
2533
+ <tr>
2534
+ <td>
2535
+ <pre class="lines">
2536
+
2537
+
2538
+ 240
2539
+ 241
2540
+ 242
2541
+ 243
2542
+ 244</pre>
2543
+ </td>
2544
+ <td>
2545
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 240</span>
2546
+
2547
+ <span class='kw'>def</span> <span class='id identifier rubyid_extension'>extension</span>
2548
+ <span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_extension'>extension</span> <span class='op'>=</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='int'>2</span><span class='rparen'>)</span>
2549
+
2550
+ <span class='kw'>return</span> <span class='id identifier rubyid_extension'>extension</span>
2551
+ <span class='kw'>end</span></pre>
2552
+ </td>
2553
+ </tr>
2554
+ </table>
2555
+ </div>
2556
+
2557
+ <div class="method_details ">
2558
+ <h3 class="signature " id="first-instance_method">
2559
+
2560
+ #<strong>first</strong> &#x21d2; <tt>Object</tt>
2561
+
2562
+
2563
+
2564
+
2565
+
2566
+ </h3><table class="source_code">
2567
+ <tr>
2568
+ <td>
2569
+ <pre class="lines">
2570
+
2571
+
2572
+ 339
2573
+ 340
2574
+ 341
2575
+ 342
2576
+ 343
2577
+ 344
2578
+ 345</pre>
2579
+ </td>
2580
+ <td>
2581
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 339</span>
2582
+
2583
+ <span class='kw'>def</span> <span class='id identifier rubyid_first'>first</span>
2584
+ <span class='kw'>if</span> <span class='id identifier rubyid_absolute?'>absolute?</span>
2585
+ <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span>
2586
+ <span class='kw'>else</span>
2587
+ <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span>
2588
+ <span class='kw'>end</span>
2589
+ <span class='kw'>end</span></pre>
2590
+ </td>
2591
+ </tr>
2592
+ </table>
2593
+ </div>
2594
+
2595
+ <div class="method_details ">
2596
+ <h3 class="signature " id="freeze-instance_method">
2597
+
2598
+ #<strong>freeze</strong> &#x21d2; <tt>Object</tt>
2599
+
2600
+
2601
+
2602
+
2603
+
2604
+ </h3><table class="source_code">
2605
+ <tr>
2606
+ <td>
2607
+ <pre class="lines">
2608
+
2609
+
2610
+ 34
2611
+ 35
2612
+ 36
2613
+ 37
2614
+ 38</pre>
2615
+ </td>
2616
+ <td>
2617
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 34</span>
2618
+
2619
+ <span class='kw'>def</span> <span class='id identifier rubyid_freeze'>freeze</span>
2620
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
2621
+
2622
+ <span class='kw'>super</span>
2623
+ <span class='kw'>end</span></pre>
2624
+ </td>
2625
+ </tr>
2626
+ </table>
2627
+ </div>
2628
+
2629
+ <div class="method_details ">
2630
+ <h3 class="signature " id="hash-instance_method">
2631
+
2632
+ #<strong>hash</strong> &#x21d2; <tt>Object</tt>
2633
+
2634
+
2635
+
2636
+
2637
+
2638
+ </h3><table class="source_code">
2639
+ <tr>
2640
+ <td>
2641
+ <pre class="lines">
2642
+
2643
+
2644
+ 304
2645
+ 305
2646
+ 306</pre>
2647
+ </td>
2648
+ <td>
2649
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 304</span>
2650
+
2651
+ <span class='kw'>def</span> <span class='id identifier rubyid_hash'>hash</span>
2652
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_hash'>hash</span>
2653
+ <span class='kw'>end</span></pre>
2654
+ </td>
2655
+ </tr>
2656
+ </table>
2657
+ </div>
2658
+
2659
+ <div class="method_details ">
2660
+ <h3 class="signature " id="include?-instance_method">
2661
+
2662
+ #<strong>include?</strong>(*args) &#x21d2; <tt>Boolean</tt>
2663
+
2664
+
2665
+
2666
+
2667
+
2668
+ </h3><div class="docstring">
2669
+ <div class="discussion">
2670
+
2671
+
2672
+
2673
+ </div>
2674
+ </div>
2675
+ <div class="tags">
2676
+
2677
+ <p class="tag_title">Returns:</p>
2678
+ <ul class="return">
2679
+
2680
+ <li>
2681
+
2682
+
2683
+ <span class='type'>(<tt>Boolean</tt>)</span>
2684
+
2685
+
2686
+
2687
+ </li>
2688
+
2689
+ </ul>
2690
+
2691
+ </div><table class="source_code">
2692
+ <tr>
2693
+ <td>
2694
+ <pre class="lines">
2695
+
2696
+
2697
+ 125
2698
+ 126
2699
+ 127</pre>
2700
+ </td>
2701
+ <td>
2702
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 125</span>
2703
+
2704
+ <span class='kw'>def</span> <span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
2705
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
2706
+ <span class='kw'>end</span></pre>
2707
+ </td>
2708
+ </tr>
2709
+ </table>
2710
+ </div>
2711
+
2712
+ <div class="method_details ">
2713
+ <h3 class="signature " id="join-instance_method">
2714
+
2715
+ #<strong>join</strong>(other) &#x21d2; <tt>Object</tt>
2716
+
2717
+
2718
+
2719
+
2720
+
2721
+ </h3><table class="source_code">
2722
+ <tr>
2723
+ <td>
2724
+ <pre class="lines">
2725
+
2726
+
2727
+ 175
2728
+ 176
2729
+ 177</pre>
2730
+ </td>
2731
+ <td>
2732
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 175</span>
2733
+
2734
+ <span class='kw'>def</span> <span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span>
2735
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@components</span> <span class='op'>+</span> <span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_simplify'>simplify</span>
2736
+ <span class='kw'>end</span></pre>
2737
+ </td>
2738
+ </tr>
2739
+ </table>
2740
+ </div>
2741
+
2742
+ <div class="method_details ">
2743
+ <h3 class="signature " id="last-instance_method">
2744
+
2745
+ #<strong>last</strong> &#x21d2; <tt>Object</tt>
2746
+
2747
+
2748
+
2749
+
2750
+
2751
+ </h3><table class="source_code">
2752
+ <tr>
2753
+ <td>
2754
+ <pre class="lines">
2755
+
2756
+
2757
+ 347
2758
+ 348
2759
+ 349
2760
+ 350
2761
+ 351
2762
+ 352
2763
+ 353</pre>
2764
+ </td>
2765
+ <td>
2766
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 347</span>
2767
+
2768
+ <span class='kw'>def</span> <span class='id identifier rubyid_last'>last</span>
2769
+ <span class='kw'>if</span> <span class='id identifier rubyid_directory?'>directory?</span>
2770
+ <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>2</span><span class='rbracket'>]</span>
2771
+ <span class='kw'>else</span>
2772
+ <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span>
2773
+ <span class='kw'>end</span>
2774
+ <span class='kw'>end</span></pre>
2775
+ </td>
2776
+ </tr>
2777
+ </table>
2778
+ </div>
2779
+
2780
+ <div class="method_details ">
2781
+ <h3 class="signature " id="relative?-instance_method">
2782
+
2783
+ #<strong>relative?</strong> &#x21d2; <tt>Boolean</tt>
2784
+
2785
+
2786
+
2787
+
2788
+
2789
+ </h3><div class="docstring">
2790
+ <div class="discussion">
2791
+
2792
+
2793
+
2794
+ </div>
2795
+ </div>
2796
+ <div class="tags">
2797
+
2798
+ <p class="tag_title">Returns:</p>
2799
+ <ul class="return">
2800
+
2801
+ <li>
2802
+
2803
+
2804
+ <span class='type'>(<tt>Boolean</tt>)</span>
2805
+
2806
+
2807
+
2808
+ </li>
2809
+
2810
+ </ul>
2811
+
2812
+ </div><table class="source_code">
2813
+ <tr>
2814
+ <td>
2815
+ <pre class="lines">
2816
+
2817
+
2818
+ 141
2819
+ 142
2820
+ 143</pre>
2821
+ </td>
2822
+ <td>
2823
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 141</span>
2824
+
2825
+ <span class='kw'>def</span> <span class='id identifier rubyid_relative?'>relative?</span>
2826
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
2827
+ <span class='kw'>end</span></pre>
2828
+ </td>
2829
+ </tr>
2830
+ </table>
2831
+ </div>
2832
+
2833
+ <div class="method_details ">
2834
+ <h3 class="signature " id="replace-instance_method">
2835
+
2836
+ #<strong>replace</strong>(other_path) &#x21d2; <tt>Object</tt>
2837
+
2838
+
2839
+
2840
+
2841
+
2842
+ </h3><table class="source_code">
2843
+ <tr>
2844
+ <td>
2845
+ <pre class="lines">
2846
+
2847
+
2848
+ 121
2849
+ 122
2850
+ 123</pre>
2851
+ </td>
2852
+ <td>
2853
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 121</span>
2854
+
2855
+ <span class='kw'>def</span> <span class='id identifier rubyid_replace'>replace</span><span class='lparen'>(</span><span class='id identifier rubyid_other_path'>other_path</span><span class='rparen'>)</span>
2856
+ <span class='ivar'>@components</span> <span class='op'>=</span> <span class='id identifier rubyid_other_path'>other_path</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span>
2857
+ <span class='kw'>end</span></pre>
2858
+ </td>
2859
+ </tr>
2860
+ </table>
2861
+ </div>
2862
+
2863
+ <div class="method_details ">
2864
+ <h3 class="signature " id="shortest_path-instance_method">
2865
+
2866
+ #<strong>shortest_path</strong>(root) &#x21d2; <tt>Object</tt>
2867
+
2868
+
2869
+
2870
+
2871
+
2872
+ </h3><table class="source_code">
2873
+ <tr>
2874
+ <td>
2875
+ <pre class="lines">
2876
+
2877
+
2878
+ 67
2879
+ 68
2880
+ 69</pre>
2881
+ </td>
2882
+ <td>
2883
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 67</span>
2884
+
2885
+ <span class='kw'>def</span> <span class='id identifier rubyid_shortest_path'>shortest_path</span><span class='lparen'>(</span><span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='rparen'>)</span>
2886
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_shortest_path'>shortest_path</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_root'><span class='object_link'><a href="../top-level-namespace.html" title="Top Level Namespace (root)">root</a></span></span><span class='rparen'>)</span>
2887
+ <span class='kw'>end</span></pre>
2888
+ </td>
2889
+ </tr>
2890
+ </table>
2891
+ </div>
2892
+
2893
+ <div class="method_details ">
2894
+ <h3 class="signature " id="simplify-instance_method">
2895
+
2896
+ #<strong>simplify</strong> &#x21d2; <tt>Object</tt>
2897
+
2898
+
2899
+
2900
+
2901
+
2902
+ </h3><table class="source_code">
2903
+ <tr>
2904
+ <td>
2905
+ <pre class="lines">
2906
+
2907
+
2908
+ 218
2909
+ 219
2910
+ 220
2911
+ 221
2912
+ 222
2913
+ 223
2914
+ 224
2915
+ 225
2916
+ 226
2917
+ 227
2918
+ 228
2919
+ 229
2920
+ 230
2921
+ 231
2922
+ 232</pre>
2923
+ </td>
2924
+ <td>
2925
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 218</span>
2926
+
2927
+ <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
2928
+ <span class='id identifier rubyid_result'>result</span> <span class='op'>=</span> <span class='id identifier rubyid_absolute?'>absolute?</span> <span class='op'>?</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
2929
+
2930
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_bit'>bit</span><span class='op'>|</span>
2931
+ <span class='kw'>if</span> <span class='id identifier rubyid_bit'>bit</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>..</span><span class='tstring_end'>&quot;</span></span>
2932
+ <span class='id identifier rubyid_result'>result</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span>
2933
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_bit'>bit</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>.</span><span class='tstring_end'>&quot;</span></span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_bit'>bit</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
2934
+ <span class='id identifier rubyid_result'>result</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_bit'>bit</span>
2935
+ <span class='kw'>end</span>
2936
+ <span class='kw'>end</span>
2937
+
2938
+ <span class='id identifier rubyid_result'>result</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_directory?'>directory?</span>
2939
+
2940
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_result'>result</span><span class='rparen'>)</span>
2941
+ <span class='kw'>end</span></pre>
2942
+ </td>
2943
+ </tr>
2944
+ </table>
2945
+ </div>
2946
+
2947
+ <div class="method_details ">
2948
+ <h3 class="signature " id="split-instance_method">
2949
+
2950
+ #<strong>split</strong>(at) &#x21d2; <tt>Object</tt>
2951
+
2952
+
2953
+
2954
+
2955
+
2956
+ </h3><table class="source_code">
2957
+ <tr>
2958
+ <td>
2959
+ <pre class="lines">
2960
+
2961
+
2962
+ 280
2963
+ 281
2964
+ 282
2965
+ 283
2966
+ 284
2967
+ 285
2968
+ 286
2969
+ 287
2970
+ 288
2971
+ 289
2972
+ 290</pre>
2973
+ </td>
2974
+ <td>
2975
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 280</span>
2976
+
2977
+ <span class='kw'>def</span> <span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='id identifier rubyid_at'>at</span><span class='rparen'>)</span>
2978
+ <span class='kw'>if</span> <span class='id identifier rubyid_at'>at</span><span class='period'>.</span><span class='id identifier rubyid_kind_of?'>kind_of?</span> <span class='const'>String</span>
2979
+ <span class='id identifier rubyid_at'>at</span> <span class='op'>=</span> <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_index'>index</span><span class='lparen'>(</span><span class='id identifier rubyid_at'>at</span><span class='rparen'>)</span>
2980
+ <span class='kw'>end</span>
2981
+
2982
+ <span class='kw'>if</span> <span class='id identifier rubyid_at'>at</span>
2983
+ <span class='kw'>return</span> <span class='lbracket'>[</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@components</span><span class='lbracket'>[</span><span class='int'>0</span><span class='op'>...</span><span class='id identifier rubyid_at'>at</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_at'>at</span><span class='op'>+</span><span class='int'>1</span><span class='op'>..</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='rbracket'>]</span>
2984
+ <span class='kw'>else</span>
2985
+ <span class='kw'>return</span> <span class='kw'>nil</span>
2986
+ <span class='kw'>end</span>
2987
+ <span class='kw'>end</span></pre>
2988
+ </td>
2989
+ </tr>
2990
+ </table>
2991
+ </div>
2992
+
2993
+ <div class="method_details ">
2994
+ <h3 class="signature " id="start_with?-instance_method">
2995
+
2996
+ #<strong>start_with?</strong>(other) &#x21d2; <tt>Boolean</tt>
2997
+
2998
+
2999
+
3000
+
3001
+
3002
+ </h3><div class="docstring">
3003
+ <div class="discussion">
3004
+
3005
+
3006
+
3007
+ </div>
3008
+ </div>
3009
+ <div class="tags">
3010
+
3011
+ <p class="tag_title">Returns:</p>
3012
+ <ul class="return">
3013
+
3014
+ <li>
3015
+
3016
+
3017
+ <span class='type'>(<tt>Boolean</tt>)</span>
3018
+
3019
+
3020
+
3021
+ </li>
3022
+
3023
+ </ul>
3024
+
3025
+ </div><table class="source_code">
3026
+ <tr>
3027
+ <td>
3028
+ <pre class="lines">
3029
+
3030
+
3031
+ 318
3032
+ 319
3033
+ 320
3034
+ 321
3035
+ 322
3036
+ 323
3037
+ 324</pre>
3038
+ </td>
3039
+ <td>
3040
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 318</span>
3041
+
3042
+ <span class='kw'>def</span> <span class='id identifier rubyid_start_with?'>start_with?</span> <span class='id identifier rubyid_other'>other</span>
3043
+ <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_components'>components</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_part'>part</span><span class='comma'>,</span> <span class='id identifier rubyid_index'>index</span><span class='op'>|</span>
3044
+ <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>if</span> <span class='ivar'>@components</span><span class='lbracket'>[</span><span class='id identifier rubyid_index'>index</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='id identifier rubyid_part'>part</span>
3045
+ <span class='kw'>end</span>
3046
+
3047
+ <span class='kw'>return</span> <span class='kw'>true</span>
3048
+ <span class='kw'>end</span></pre>
3049
+ </td>
3050
+ </tr>
3051
+ </table>
3052
+ </div>
3053
+
3054
+ <div class="method_details ">
3055
+ <h3 class="signature " id="to_a-instance_method">
3056
+
3057
+ #<strong>to_a</strong> &#x21d2; <tt>Object</tt>
3058
+
3059
+
3060
+
3061
+
3062
+
3063
+ </h3><table class="source_code">
3064
+ <tr>
3065
+ <td>
3066
+ <pre class="lines">
3067
+
3068
+
3069
+ 171
3070
+ 172
3071
+ 173</pre>
3072
+ </td>
3073
+ <td>
3074
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 171</span>
3075
+
3076
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_a'>to_a</span>
3077
+ <span class='ivar'>@components</span>
3078
+ <span class='kw'>end</span></pre>
3079
+ </td>
3080
+ </tr>
3081
+ </table>
3082
+ </div>
3083
+
3084
+ <div class="method_details ">
3085
+ <h3 class="signature " id="to_absolute-instance_method">
3086
+
3087
+ #<strong>to_absolute</strong> &#x21d2; <tt>Object</tt>
3088
+
3089
+
3090
+
3091
+
3092
+
3093
+ </h3><table class="source_code">
3094
+ <tr>
3095
+ <td>
3096
+ <pre class="lines">
3097
+
3098
+
3099
+ 149
3100
+ 150
3101
+ 151
3102
+ 152
3103
+ 153
3104
+ 154
3105
+ 155</pre>
3106
+ </td>
3107
+ <td>
3108
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 149</span>
3109
+
3110
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_absolute'>to_absolute</span>
3111
+ <span class='kw'>if</span> <span class='id identifier rubyid_absolute?'>absolute?</span>
3112
+ <span class='kw'>return</span> <span class='kw'>self</span>
3113
+ <span class='kw'>else</span>
3114
+ <span class='kw'>return</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>+</span> <span class='ivar'>@components</span><span class='rparen'>)</span>
3115
+ <span class='kw'>end</span>
3116
+ <span class='kw'>end</span></pre>
3117
+ </td>
3118
+ </tr>
3119
+ </table>
3120
+ </div>
3121
+
3122
+ <div class="method_details ">
3123
+ <h3 class="signature " id="to_directory-instance_method">
3124
+
3125
+ #<strong>to_directory</strong> &#x21d2; <tt>Object</tt>
3126
+
3127
+
3128
+
3129
+
3130
+
3131
+ </h3><table class="source_code">
3132
+ <tr>
3133
+ <td>
3134
+ <pre class="lines">
3135
+
3136
+
3137
+ 133
3138
+ 134
3139
+ 135
3140
+ 136
3141
+ 137
3142
+ 138
3143
+ 139</pre>
3144
+ </td>
3145
+ <td>
3146
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 133</span>
3147
+
3148
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_directory'>to_directory</span>
3149
+ <span class='kw'>if</span> <span class='id identifier rubyid_directory?'>directory?</span>
3150
+ <span class='kw'>return</span> <span class='kw'>self</span>
3151
+ <span class='kw'>else</span>
3152
+ <span class='kw'>return</span> <span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
3153
+ <span class='kw'>end</span>
3154
+ <span class='kw'>end</span></pre>
3155
+ </td>
3156
+ </tr>
3157
+ </table>
3158
+ </div>
3159
+
3160
+ <div class="method_details ">
3161
+ <h3 class="signature " id="to_local_path-instance_method">
3162
+
3163
+ #<strong>to_local_path</strong>(separator = File::SEPARATOR) &#x21d2; <tt>Object</tt>
3164
+
3165
+
3166
+
3167
+
3168
+
3169
+ </h3><table class="source_code">
3170
+ <tr>
3171
+ <td>
3172
+ <pre class="lines">
3173
+
3174
+
3175
+ 252
3176
+ 253
3177
+ 254</pre>
3178
+ </td>
3179
+ <td>
3180
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 252</span>
3181
+
3182
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_local_path'>to_local_path</span><span class='lparen'>(</span><span class='id identifier rubyid_separator'>separator</span> <span class='op'>=</span> <span class='const'>File</span><span class='op'>::</span><span class='const'>SEPARATOR</span><span class='rparen'>)</span>
3183
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='id identifier rubyid_separator'>separator</span><span class='rparen'>)</span>
3184
+ <span class='kw'>end</span></pre>
3185
+ </td>
3186
+ </tr>
3187
+ </table>
3188
+ </div>
3189
+
3190
+ <div class="method_details ">
3191
+ <h3 class="signature " id="to_relative!-instance_method">
3192
+
3193
+ #<strong>to_relative!</strong> &#x21d2; <tt>Object</tt>
3194
+
3195
+
3196
+
3197
+
3198
+
3199
+ </h3><table class="source_code">
3200
+ <tr>
3201
+ <td>
3202
+ <pre class="lines">
3203
+
3204
+
3205
+ 157
3206
+ 158
3207
+ 159</pre>
3208
+ </td>
3209
+ <td>
3210
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 157</span>
3211
+
3212
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_relative!'>to_relative!</span>
3213
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_shift'>shift</span> <span class='kw'>if</span> <span class='id identifier rubyid_relative?'>relative?</span>
3214
+ <span class='kw'>end</span></pre>
3215
+ </td>
3216
+ </tr>
3217
+ </table>
3218
+ </div>
3219
+
3220
+ <div class="method_details ">
3221
+ <h3 class="signature " id="to_str-instance_method">
3222
+
3223
+ #<strong>to_str</strong> &#x21d2; <tt>Object</tt>
3224
+
3225
+
3226
+
3227
+ <span class="aliases">Also known as:
3228
+ <span class="names"><span id='to_s-instance_method'>to_s</span></span>
3229
+ </span>
3230
+
3231
+
3232
+
3233
+ </h3><table class="source_code">
3234
+ <tr>
3235
+ <td>
3236
+ <pre class="lines">
3237
+
3238
+
3239
+ 161
3240
+ 162
3241
+ 163
3242
+ 164
3243
+ 165
3244
+ 166
3245
+ 167</pre>
3246
+ </td>
3247
+ <td>
3248
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 161</span>
3249
+
3250
+ <span class='kw'>def</span> <span class='id identifier rubyid_to_str'>to_str</span>
3251
+ <span class='kw'>if</span> <span class='ivar'>@components</span> <span class='op'>==</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
3252
+ <span class='const'><span class='object_link'><a href="#SEPARATOR-constant" title="Utopia::Path::SEPARATOR (constant)">SEPARATOR</a></span></span>
3253
+ <span class='kw'>else</span>
3254
+ <span class='ivar'>@components</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#SEPARATOR-constant" title="Utopia::Path::SEPARATOR (constant)">SEPARATOR</a></span></span><span class='rparen'>)</span>
3255
+ <span class='kw'>end</span>
3256
+ <span class='kw'>end</span></pre>
3257
+ </td>
3258
+ </tr>
3259
+ </table>
3260
+ </div>
3261
+
3262
+ <div class="method_details ">
3263
+ <h3 class="signature " id="with_prefix-instance_method">
3264
+
3265
+ #<strong>with_prefix</strong>(*args) &#x21d2; <tt>Object</tt>
3266
+
3267
+
3268
+
3269
+
3270
+
3271
+ </h3><table class="source_code">
3272
+ <tr>
3273
+ <td>
3274
+ <pre class="lines">
3275
+
3276
+
3277
+ 199
3278
+ 200
3279
+ 201</pre>
3280
+ </td>
3281
+ <td>
3282
+ <pre class="code"><span class="info file"># File 'lib/utopia/path.rb', line 199</span>
3283
+
3284
+ <span class='kw'>def</span> <span class='id identifier rubyid_with_prefix'>with_prefix</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
3285
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span> <span class='op'>+</span> <span class='kw'>self</span>
3286
+ <span class='kw'>end</span></pre>
3287
+ </td>
3288
+ </tr>
3289
+ </table>
3290
+ </div>
3291
+
3292
+ </div>
3293
+
3294
+ </div>
3295
+
3296
+ <div id="footer">
3297
+ Generated on Sat Mar 24 21:17:19 2018 by
3298
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
3299
+ 0.9.12 (ruby-2.5.0).
3300
+ </div>
3301
+
3302
+ </div>
3303
+ </body>
3304
+ </html>