utopia 2.13.4 → 2.14.0

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