Browse Source

Module restructuring, minor bugfixes, first template engine (incomplete), template engine example

master
Yessiest 8 months ago
parent
commit
d30b09fe2c
  1. 35
      .yardoc/checksums
  2. BIN
      .yardoc/object_types
  3. BIN
      .yardoc/objects/root.dat
  4. 1
      .yardopts
  5. 2
      README.md
  6. 20
      doc/Hyde.html
  7. 2
      doc/Hyde/CONNECTHandler.html
  8. 2
      doc/Hyde/DELETEHandler.html
  9. 11
      doc/Hyde/DSL.html
  10. 337
      doc/Hyde/DSL/CommonMethods.html
  11. 209
      doc/Hyde/DSL/PathConstructors.html
  12. 65
      doc/Hyde/DSL/PathMethods.html
  13. 207
      doc/Hyde/DSL/ProbeConstructors.html
  14. 333
      doc/Hyde/DSL/ProbeMethods.html
  15. 105
      doc/Hyde/DSL/TemplateMethods.html
  16. 10
      doc/Hyde/GETHandler.html
  17. 2
      doc/Hyde/HEADHandler.html
  18. 30
      doc/Hyde/Handler.html
  19. 127
      doc/Hyde/Handlers.html
  20. 220
      doc/Hyde/Handlers/CONNECT.html
  21. 220
      doc/Hyde/Handlers/DELETE.html
  22. 360
      doc/Hyde/Handlers/GET.html
  23. 220
      doc/Hyde/Handlers/HEAD.html
  24. 597
      doc/Hyde/Handlers/Handler.html
  25. 220
      doc/Hyde/Handlers/OPTIONS.html
  26. 220
      doc/Hyde/Handlers/PATCH.html
  27. 220
      doc/Hyde/Handlers/POST.html
  28. 220
      doc/Hyde/Handlers/PUT.html
  29. 469
      doc/Hyde/Handlers/Serve.html
  30. 220
      doc/Hyde/Handlers/TRACE.html
  31. 48
      doc/Hyde/Node.html
  32. 2
      doc/Hyde/OPTIONSHandler.html
  33. 2
      doc/Hyde/PATCHHandler.html
  34. 2
      doc/Hyde/POSTHandler.html
  35. 2
      doc/Hyde/PUTHandler.html
  36. 176
      doc/Hyde/Path.html
  37. 242
      doc/Hyde/PathContext.html
  38. 57
      doc/Hyde/Pattern.html
  39. 13
      doc/Hyde/PatternMatching.html
  40. 155
      doc/Hyde/PatternMatching/Glob.html
  41. 68
      doc/Hyde/PatternMatching/ReMatch.html
  42. 64
      doc/Hyde/Probe.html
  43. 249
      doc/Hyde/ProbeContext.html
  44. 227
      doc/Hyde/ProcessorContext.html
  45. 317
      doc/Hyde/Request.html
  46. 87
      doc/Hyde/Response.html
  47. 20
      doc/Hyde/ServeHandler.html
  48. 47
      doc/Hyde/Server.html
  49. 162
      doc/Hyde/ServerContext.html
  50. 2
      doc/Hyde/TRACEHandler.html
  51. 763
      doc/Hyde/Template.html
  52. 249
      doc/Hyde/TemplateContext.html
  53. 127
      doc/Hyde/Templates.html
  54. 311
      doc/Hyde/Templates/ERB.html
  55. 414
      doc/Hyde/Util.html
  56. 857
      doc/Hyde/Util/FormPart.html
  57. 44
      doc/Hyde/Util/Lookup.html
  58. 487
      doc/Hyde/Util/MultipartParser.html
  59. 120
      doc/Hyde/Util/ParserCommon.html
  60. 175
      doc/Hyde/Util/Query.html
  61. 169
      doc/_index.html
  62. 2
      doc/class_list.html
  63. 6
      doc/file.README.html
  64. 6
      doc/index.html
  65. 408
      doc/method_list.html
  66. 2
      doc/top-level-namespace.html
  67. 14
      examples/extension_testing/extension.ru
  68. 12
      examples/extension_testing/external_methods.rb
  69. 1
      examples/extension_testing/lib
  70. 1
      examples/extension_testing/readme.txt
  71. 1
      examples/form/readme.txt
  72. 4
      examples/templates/footer.rhtml
  73. 16
      examples/templates/helloworld.ru
  74. 14
      examples/templates/index.rhtml
  75. 1
      examples/templates/lib
  76. 1
      examples/templates/readme.txt
  77. 2
      lib/hyde.rb
  78. 78
      lib/hyde/dsl/constructors_path.rb
  79. 14
      lib/hyde/dsl/constructors_probe.rb
  80. 0
      lib/hyde/dsl/methods_common.rb
  81. 0
      lib/hyde/dsl/methods_path.rb
  82. 6
      lib/hyde/dsl/methods_probe.rb
  83. 9
      lib/hyde/dsl/methods_template.rb
  84. 80
      lib/hyde/dsl/path_constructors.rb
  85. 30
      lib/hyde/path.rb
  86. 35
      lib/hyde/probe.rb
  87. 92
      lib/hyde/probe/handler.rb
  88. 112
      lib/hyde/probe/http_method.rb
  89. 42
      lib/hyde/probe/serve_handler.rb
  90. 5
      lib/hyde/server.rb
  91. 80
      lib/hyde/template.rb
  92. 25
      lib/hyde/template/erb.rb

35
.yardoc/checksums

@ -1,21 +1,28 @@
lib/hyde.rb 775368f05e89c7396fdf9a9c1f55e3537f8fba98
lib/hyde.rb 632d043ed6e7484bca963c37e1629e1d88c89b69
lib/hyde/node.rb 93d92492390abb2b55649c6d027fa3a2cb8f2014
lib/hyde/path.rb 280170523467824ac6ce310500fc88439808d59e
lib/hyde/probe.rb 994a5527bb30c713c1c70e56195ea6967ae39241
lib/hyde/server.rb 3286219acc8606b432d12545e9ba3a57dd227473
lib/hyde/request.rb 9baea24ae9975e3a26571878ed7e9da99889584f
lib/hyde/path.rb 42c04e42ea879ad73f639f2086b3ab5ca40489dc
lib/hyde/probe.rb 673b55e9aa8c8286a770bd23ae00bff1ac2047fe
lib/hyde/server.rb 6f15f6c8e67783086bfe70ad03c7ca9b8269c69d
lib/hyde/request.rb 792427908273455eb694e13d3517cdae43af3454
lib/hyde/response.rb 0f0c107c7db883b308b81cbf5c0c4b7d5c90e7ba
lib/hyde/util/html.rb 3767a1632026ba555ae5517b59728b2e916b61de
lib/hyde/util/query.rb ffa6f9b6631277d7061f63dd36e4cb431a8169f5
lib/hyde/template.rb f3ac5033c5cdb9218b1865b5c9662ba50b813a70
lib/hyde/util/html.rb bb83ec3ad162b8702ae054428f33c7d8a041d816
lib/hyde/util/query.rb 212e9bd776eac429c2b2a821586ccce97f996df9
lib/hyde/util/header.rb ce82b5351a857860b105f25d68ca66c0193359ce
lib/hyde/util/lookup.rb 5b8e28a8471bb786f4e0a0d616885d238c806661
lib/hyde/probe/binding.rb 1a83cfea5e7b620d075798c920dd4af3335871c7
lib/hyde/probe/handler.rb 4d45e895a3bfee8e5234be3862c7e201772731b1
lib/hyde/dsl/path_methods.rb 0369e370c594f0bd5c987c67791175eeaa8f9c21
lib/hyde/template/erb.rb 4d1c85dd55b55030bba1ba4f9c27ea39fd0c1e47
lib/hyde/util/sorting.rb af30f01ce32880f7e3e2b0ad6c2324c2fded9431
lib/hyde/probe/handler.rb 9b3eb4ce702c40920c04ed0cb3b93984683de447
lib/hyde/util/multipart.rb 37abad9fbe044855d02d36185be645f07cb417c0
lib/hyde/dsl/methods_path.rb 0369e370c594f0bd5c987c67791175eeaa8f9c21
lib/hyde/pattern_matching.rb fe86f6529a2d22c128d9d3a74217862e9fa59c15
lib/hyde/dsl/probe_methods.rb a9dd3ddbdf89875d79d5ca3e56fd3a261546dd25
lib/hyde/probe/http_method.rb f5f6874998e4a581cd3673a06f3536c8a14e67c8
lib/hyde/probe/serve_handler.rb 1690e7dd3f0abe9180a61d474bb89c0a765fc381
lib/hyde/dsl/path_constructors.rb 97895412fc27eeb7f3fa379a85972c97a24d97bf
lib/hyde/dsl/methods_probe.rb c18bb7f712f14e4d08416f77969eb0af07a4f3a7
lib/hyde/probe/http_method.rb 26ba5c9dabff5508dbd6efcba1711d6417cf957b
lib/hyde/dsl/methods_common.rb ea06161f4324127fbbacd51918eadc4e059e4fcf
lib/hyde/probe/serve_handler.rb 6c1d2a7b949700468342ced4c23c7fe60df4d3f0
lib/hyde/dsl/methods_template.rb c77827f2a4133142b7f9f9dfe0bb49efb3b23d44
lib/hyde/dsl/constructors_path.rb d9fafcfae4d6aab9bd85a7de955eb74f8d4d5937
lib/hyde/pattern_matching/glob.rb 16595083bc8d6f7b98f4adda502a05bd411bc1ca
lib/hyde/pattern_matching/util.rb 188dc7d5d9a9a6538a01943a83eb132c385dc092
lib/hyde/dsl/constructors_probe.rb 6295d25bfa4e896b122590e79e57a03111ed2f09
lib/hyde/pattern_matching/rematch.rb 54a4f94791e68d85c38034d954e4c3174e01511b

BIN
.yardoc/object_types

BIN
.yardoc/objects/root.dat

1
.yardopts

@ -0,0 +1 @@
--markup=markdown --markup-provider=redcarpet

2
README.md

@ -100,7 +100,7 @@ app = Hyde::Server.new do
end
get "answer" do
header "content-type", "application/json"
'{"answer":42, "desc":"something important!"}'
'\\{"answer":42, "desc":"something important!"\\}'
end
end
end

20
doc/Hyde.html

@ -79,7 +79,7 @@
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde.rb<span class="defines">,<br />
lib/hyde/node.rb,<br /> lib/hyde/path.rb,<br /> lib/hyde/probe.rb,<br /> lib/hyde/server.rb,<br /> lib/hyde/request.rb,<br /> lib/hyde/response.rb,<br /> lib/hyde/util/html.rb,<br /> lib/hyde/util/query.rb,<br /> lib/hyde/util/lookup.rb,<br /> lib/hyde/probe/binding.rb,<br /> lib/hyde/probe/handler.rb,<br /> lib/hyde/dsl/path_methods.rb,<br /> lib/hyde/pattern_matching.rb,<br /> lib/hyde/dsl/probe_methods.rb,<br /> lib/hyde/probe/http_method.rb,<br /> lib/hyde/probe/serve_handler.rb,<br /> lib/hyde/dsl/path_constructors.rb,<br /> lib/hyde/pattern_matching/glob.rb,<br /> lib/hyde/pattern_matching/util.rb,<br /> lib/hyde/pattern_matching/rematch.rb</span>
lib/hyde/node.rb,<br /> lib/hyde/path.rb,<br /> lib/hyde/probe.rb,<br /> lib/hyde/server.rb,<br /> lib/hyde/request.rb,<br /> lib/hyde/response.rb,<br /> lib/hyde/template.rb,<br /> lib/hyde/util/html.rb,<br /> lib/hyde/util/query.rb,<br /> lib/hyde/util/header.rb,<br /> lib/hyde/util/lookup.rb,<br /> lib/hyde/template/erb.rb,<br /> lib/hyde/util/sorting.rb,<br /> lib/hyde/probe/handler.rb,<br /> lib/hyde/util/multipart.rb,<br /> lib/hyde/dsl/methods_path.rb,<br /> lib/hyde/pattern_matching.rb,<br /> lib/hyde/dsl/methods_probe.rb,<br /> lib/hyde/probe/http_method.rb,<br /> lib/hyde/dsl/methods_common.rb,<br /> lib/hyde/probe/serve_handler.rb,<br /> lib/hyde/dsl/methods_template.rb,<br /> lib/hyde/dsl/constructors_path.rb,<br /> lib/hyde/pattern_matching/glob.rb,<br /> lib/hyde/pattern_matching/util.rb,<br /> lib/hyde/dsl/constructors_probe.rb,<br /> lib/hyde/pattern_matching/rematch.rb</span>
</dd>
</dl>
@ -87,8 +87,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Hyde is a hideously simple ruby web framework</p>
<p>Hyde is a hideously simple ruby web framework</p>
</div>
@ -100,11 +99,11 @@
<p class="children">
<strong class="modules">Modules:</strong> <span class='object_link'><a href="Hyde/DSL.html" title="Hyde::DSL (module)">DSL</a></span>, <span class='object_link'><a href="Hyde/PatternMatching.html" title="Hyde::PatternMatching (module)">PatternMatching</a></span>, <span class='object_link'><a href="Hyde/Util.html" title="Hyde::Util (module)">Util</a></span>
<strong class="modules">Modules:</strong> <span class='object_link'><a href="Hyde/DSL.html" title="Hyde::DSL (module)">DSL</a></span>, <span class='object_link'><a href="Hyde/Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span>, <span class='object_link'><a href="Hyde/PatternMatching.html" title="Hyde::PatternMatching (module)">PatternMatching</a></span>, <span class='object_link'><a href="Hyde/Templates.html" title="Hyde::Templates (module)">Templates</a></span>, <span class='object_link'><a href="Hyde/Util.html" title="Hyde::Util (module)">Util</a></span>
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Hyde/CONNECTHandler.html" title="Hyde::CONNECTHandler (class)">CONNECTHandler</a></span>, <span class='object_link'><a href="Hyde/DELETEHandler.html" title="Hyde::DELETEHandler (class)">DELETEHandler</a></span>, <span class='object_link'><a href="Hyde/GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span>, <span class='object_link'><a href="Hyde/HEADHandler.html" title="Hyde::HEADHandler (class)">HEADHandler</a></span>, <span class='object_link'><a href="Hyde/Handler.html" title="Hyde::Handler (class)">Handler</a></span>, <span class='object_link'><a href="Hyde/Node.html" title="Hyde::Node (class)">Node</a></span>, <span class='object_link'><a href="Hyde/OPTIONSHandler.html" title="Hyde::OPTIONSHandler (class)">OPTIONSHandler</a></span>, <span class='object_link'><a href="Hyde/PATCHHandler.html" title="Hyde::PATCHHandler (class)">PATCHHandler</a></span>, <span class='object_link'><a href="Hyde/POSTHandler.html" title="Hyde::POSTHandler (class)">POSTHandler</a></span>, <span class='object_link'><a href="Hyde/PUTHandler.html" title="Hyde::PUTHandler (class)">PUTHandler</a></span>, <span class='object_link'><a href="Hyde/Path.html" title="Hyde::Path (class)">Path</a></span>, <span class='object_link'><a href="Hyde/PathBinding.html" title="Hyde::PathBinding (class)">PathBinding</a></span>, <span class='object_link'><a href="Hyde/Pattern.html" title="Hyde::Pattern (class)">Pattern</a></span>, <span class='object_link'><a href="Hyde/Probe.html" title="Hyde::Probe (class)">Probe</a></span>, <span class='object_link'><a href="Hyde/ProbeBinding.html" title="Hyde::ProbeBinding (class)">ProbeBinding</a></span>, <span class='object_link'><a href="Hyde/Request.html" title="Hyde::Request (class)">Request</a></span>, <span class='object_link'><a href="Hyde/Response.html" title="Hyde::Response (class)">Response</a></span>, <span class='object_link'><a href="Hyde/ServeHandler.html" title="Hyde::ServeHandler (class)">ServeHandler</a></span>, <span class='object_link'><a href="Hyde/Server.html" title="Hyde::Server (class)">Server</a></span>, <span class='object_link'><a href="Hyde/ServerBinding.html" title="Hyde::ServerBinding (class)">ServerBinding</a></span>, <span class='object_link'><a href="Hyde/TRACEHandler.html" title="Hyde::TRACEHandler (class)">TRACEHandler</a></span>
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Hyde/Node.html" title="Hyde::Node (class)">Node</a></span>, <span class='object_link'><a href="Hyde/Path.html" title="Hyde::Path (class)">Path</a></span>, <span class='object_link'><a href="Hyde/PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span>, <span class='object_link'><a href="Hyde/Pattern.html" title="Hyde::Pattern (class)">Pattern</a></span>, <span class='object_link'><a href="Hyde/Probe.html" title="Hyde::Probe (class)">Probe</a></span>, <span class='object_link'><a href="Hyde/ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span>, <span class='object_link'><a href="Hyde/ProcessorContext.html" title="Hyde::ProcessorContext (class)">ProcessorContext</a></span>, <span class='object_link'><a href="Hyde/Request.html" title="Hyde::Request (class)">Request</a></span>, <span class='object_link'><a href="Hyde/Response.html" title="Hyde::Response (class)">Response</a></span>, <span class='object_link'><a href="Hyde/Server.html" title="Hyde::Server (class)">Server</a></span>, <span class='object_link'><a href="Hyde/ServerContext.html" title="Hyde::ServerContext (class)">ServerContext</a></span>, <span class='object_link'><a href="Hyde/Template.html" title="Hyde::Template (class)">Template</a></span>, <span class='object_link'><a href="Hyde/TemplateContext.html" title="Hyde::TemplateContext (class)">TemplateContext</a></span>
</p>
@ -120,8 +119,7 @@
<dt id="VERSION-constant" class="">VERSION =
<div class="docstring">
<div class="discussion">
<p>Hyde version</p>
<p>Hyde version</p>
</div>
@ -136,8 +134,7 @@
<dt id="VLINE-constant" class="">VLINE =
<div class="docstring">
<div class="discussion">
<p>Hyde branding and version</p>
<p>Hyde branding and version</p>
</div>
@ -152,8 +149,7 @@
<dt id="COPYRIGHT-constant" class="">COPYRIGHT =
<div class="docstring">
<div class="discussion">
<p>Hyde copyright</p>
<p>Hyde copyright</p>
</div>
@ -179,7 +175,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/CONNECTHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/DELETEHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

11
doc/Hyde/DSL.html

@ -78,8 +78,8 @@
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/path_methods.rb<span class="defines">,<br />
lib/hyde/dsl/probe_methods.rb,<br /> lib/hyde/dsl/path_constructors.rb</span>
<dd>lib/hyde/dsl/methods_path.rb<span class="defines">,<br />
lib/hyde/dsl/methods_probe.rb,<br /> lib/hyde/dsl/methods_common.rb,<br /> lib/hyde/dsl/methods_template.rb,<br /> lib/hyde/dsl/constructors_path.rb,<br /> lib/hyde/dsl/constructors_probe.rb</span>
</dd>
</dl>
@ -87,8 +87,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Shared DSL methods</p>
<p>Shared DSL methods</p>
</div>
@ -100,7 +99,7 @@
<p class="children">
<strong class="modules">Modules:</strong> <span class='object_link'><a href="DSL/PathConstructors.html" title="Hyde::DSL::PathConstructors (module)">PathConstructors</a></span>, <span class='object_link'><a href="DSL/PathMethods.html" title="Hyde::DSL::PathMethods (module)">PathMethods</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html" title="Hyde::DSL::ProbeMethods (module)">ProbeMethods</a></span>
<strong class="modules">Modules:</strong> <span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">CommonMethods</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html" title="Hyde::DSL::PathConstructors (module)">PathConstructors</a></span>, <span class='object_link'><a href="DSL/PathMethods.html" title="Hyde::DSL::PathMethods (module)">PathMethods</a></span>, <span class='object_link'><a href="DSL/ProbeConstructors.html" title="Hyde::DSL::ProbeConstructors (module)">ProbeConstructors</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html" title="Hyde::DSL::ProbeMethods (module)">ProbeMethods</a></span>, <span class='object_link'><a href="DSL/TemplateMethods.html" title="Hyde::DSL::TemplateMethods (module)">TemplateMethods</a></span>
@ -118,7 +117,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

337
doc/Hyde/DSL/CommonMethods.html

@ -0,0 +1,337 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Module: Hyde::DSL::CommonMethods
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::DSL::CommonMethods";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (C)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../DSL.html" title="Hyde::DSL (module)">DSL</a></span></span>
&raquo;
<span class="title">CommonMethods</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Module: Hyde::DSL::CommonMethods
</h1>
<div class="box_info">
<dl>
<dt>Included in:</dt>
<dd><span class='object_link'><a href="../ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span>, <span class='object_link'><a href="../ProcessorContext.html" title="Hyde::ProcessorContext (class)">ProcessorContext</a></span>, <span class='object_link'><a href="../TemplateContext.html" title="Hyde::TemplateContext (class)">TemplateContext</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/methods_common.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Methods shared by probes, preprocessors and filters.</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#bounce-instance_method" title="#bounce (instance method)">#<strong>bounce</strong> &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Bounce request to the next handler.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#die-instance_method" title="#die (instance method)">#<strong>die</strong>(errorcode, backtrace: nil) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Stop execution and generate a boilerplate response with the given code.</p>
</div></span>
</li>
</ul>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="bounce-instance_method">
#<strong>bounce</strong> &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Bounce request to the next handler</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Raises:</p>
<ul class="raise">
<li>
<span class='type'>(<tt>UncaughtThrowError</tt>)</span>
&mdash;
<div class='inline'><p>throws :break to get out of the callback</p>
</div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
23
24
25</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_common.rb', line 23</span>
<span class='kw'>def</span> <span class='id identifier rubyid_bounce'>bounce</span>
<span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:break</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="die-instance_method">
#<strong>die</strong>(errorcode, backtrace: nil) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Stop execution and generate a boilerplate response with the given code</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>errorcode</span>
<span class='type'>(<tt>Integer</tt>)</span>
</li>
<li>
<span class='name'>backtrace</span>
<span class='type'>(<tt>Array(String)</tt>, <tt>nil</tt>)</span>
<em class="default">(defaults to: <tt>nil</tt>)</em>
</li>
</ul>
<p class="tag_title">Raises:</p>
<ul class="raise">
<li>
<span class='type'>(<tt>UncaughtThrowError</tt>)</span>
&mdash;
<div class='inline'><p>throws :finish to return back to Server</p>
</div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
11
12
13
14
15
16
17
18
19</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_common.rb', line 11</span>
<span class='kw'>def</span> <span class='id identifier rubyid_die'>die</span><span class='lparen'>(</span><span class='id identifier rubyid_errorcode'>errorcode</span><span class='comma'>,</span> <span class='label'>backtrace:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
<span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:finish</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_errorcode'>errorcode</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span>
<span class='op'>*</span><span class='lparen'>(</span><span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handle.</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_errorcode'>errorcode</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>or</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handle.default</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span>
<span class='id identifier rubyid_errorcode'>errorcode</span><span class='comma'>,</span>
<span class='label'>backtrace:</span> <span class='id identifier rubyid_backtrace'>backtrace</span>
<span class='rparen'>)</span>
<span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

209
doc/Hyde/DSL/PathConstructors.html

@ -76,22 +76,21 @@
<dl>
<dt>Included in:</dt>
<dd><span class='object_link'><a href="../PathBinding.html" title="Hyde::PathBinding (class)">PathBinding</a></span></dd>
<dd><span class='object_link'><a href="../PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/path_constructors.rb</dd>
<dd>lib/hyde/dsl/constructors_path.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Path (and subclasses) DSL constructors</p>
<p>Path (and subclasses) DSL constructors</p>
</div>
@ -131,8 +130,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../CONNECTHandler.html" title="Hyde::CONNECTHandler (class)">CONNECTHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::CONNECTHandler object.</p>
</div></span>
</li>
@ -155,8 +153,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../DELETEHandler.html" title="Hyde::DELETEHandler (class)">Hyde::DELETEHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::DELETEHandler object.</p>
</div></span>
</li>
@ -179,8 +176,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::GETHandler object.</p>
</div></span>
</li>
@ -203,8 +199,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../HEADHandler.html" title="Hyde::HEADHandler (class)">HEADHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::HEADHandler object.</p>
</div></span>
</li>
@ -227,8 +222,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../OPTIONSHandler.html" title="Hyde::OPTIONSHandler (class)">OPTIONSHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::OPTIONSHandler object.</p>
</div></span>
</li>
@ -251,8 +245,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../PATCHHandler.html" title="Hyde::PATCHHandler (class)">PATCHHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::PATCHHandler object.</p>
</div></span>
</li>
@ -275,8 +268,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../Path.html" title="Hyde::Path (class)">Path</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new <span class='object_link'><a href="../Path.html" title="Hyde::Path (class)">Path</a></span> object.</p>
</div></span>
</li>
@ -299,8 +291,7 @@
<span class="summary_desc"><div class='inline'>
<p>create a new <span class='object_link'><a href="../POSTHandler.html" title="Hyde::POSTHandler (class)">POSTHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>create a new Handlers::POSTHandler object.</p>
</div></span>
</li>
@ -323,8 +314,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::Probe object.</p>
</div></span>
</li>
@ -347,8 +337,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../PUTHandler.html" title="Hyde::PUTHandler (class)">PUTHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::PUTHandler object.</p>
</div></span>
</li>
@ -371,8 +360,7 @@
<span class="summary_desc"><div class='inline'>
<p>Append a Node child object to the list of children.</p>
<span class="summary_desc"><div class='inline'><p>Append a Node child object to the list of children.</p>
</div></span>
</li>
@ -395,8 +383,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span> that serves static files.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::GETHandler that serves static files.</p>
</div></span>
</li>
@ -419,8 +406,7 @@
<span class="summary_desc"><div class='inline'>
<p>Create a new <span class='object_link'><a href="../TRACEHandler.html" title="Hyde::TRACEHandler (class)">TRACEHandler</a></span> object.</p>
<span class="summary_desc"><div class='inline'><p>Create a new Handlers::TRACEHandler object.</p>
</div></span>
</li>
@ -446,8 +432,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../CONNECTHandler.html" title="Hyde::CONNECTHandler (class)">CONNECTHandler</a></span> object</p>
<p>Create a new Handlers::CONNECTHandler object</p>
</div>
@ -461,15 +446,15 @@
<pre class="lines">
55
56
57</pre>
53
54
55</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 55</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 53</span>
<span class='kw'>def</span> <span class='id identifier rubyid_connect'>connect</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../CONNECTHandler.html" title="Hyde::CONNECTHandler (class)">CONNECTHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/CONNECT.html" title="Hyde::Handlers::CONNECT (class)">CONNECT</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -487,8 +472,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../DELETEHandler.html" title="Hyde::DELETEHandler (class)">Hyde::DELETEHandler</a></span> object</p>
<p>Create a new Handlers::DELETEHandler object</p>
</div>
@ -502,15 +486,15 @@
<pre class="lines">
50
51
52</pre>
48
49
50</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 50</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 48</span>
<span class='kw'>def</span> <span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../DELETEHandler.html" title="Hyde::DELETEHandler (class)">DELETEHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/DELETE.html" title="Hyde::Handlers::DELETE (class)">DELETE</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -528,8 +512,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span> object</p>
<p>Create a new Handlers::GETHandler object</p>
</div>
@ -543,15 +526,15 @@
<pre class="lines">
30
31
32</pre>
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 30</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 28</span>
<span class='kw'>def</span> <span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -569,8 +552,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../HEADHandler.html" title="Hyde::HEADHandler (class)">HEADHandler</a></span> object</p>
<p>Create a new Handlers::HEADHandler object</p>
</div>
@ -584,15 +566,15 @@
<pre class="lines">
45
46
47</pre>
43
44
45</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 45</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 43</span>
<span class='kw'>def</span> <span class='id identifier rubyid_head'>head</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../HEADHandler.html" title="Hyde::HEADHandler (class)">HEADHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/HEAD.html" title="Hyde::Handlers::HEAD (class)">HEAD</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -610,8 +592,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../OPTIONSHandler.html" title="Hyde::OPTIONSHandler (class)">OPTIONSHandler</a></span> object</p>
<p>Create a new Handlers::OPTIONSHandler object</p>
</div>
@ -625,15 +606,15 @@
<pre class="lines">
70
71
72</pre>
68
69
70</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 70</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 68</span>
<span class='kw'>def</span> <span class='id identifier rubyid_options'>options</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../OPTIONSHandler.html" title="Hyde::OPTIONSHandler (class)">OPTIONSHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/OPTIONS.html" title="Hyde::Handlers::OPTIONS (class)">OPTIONS</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -651,8 +632,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../PATCHHandler.html" title="Hyde::PATCHHandler (class)">PATCHHandler</a></span> object</p>
<p>Create a new Handlers::PATCHHandler object</p>
</div>
@ -666,15 +646,15 @@
<pre class="lines">
65
66
67</pre>
63
64
65</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 65</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 63</span>
<span class='kw'>def</span> <span class='id identifier rubyid_patch'>patch</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../PATCHHandler.html" title="Hyde::PATCHHandler (class)">PATCHHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/PATCH.html" title="Hyde::Handlers::PATCH (class)">PATCH</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -692,8 +672,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../Path.html" title="Hyde::Path (class)">Path</a></span> object</p>
<p>Create a new <span class='object_link'><a href="../Path.html" title="Hyde::Path (class)">Path</a></span> object</p>
</div>
@ -709,17 +688,13 @@
18
19
20
21
22</pre>
20</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 18</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 18</span>
<span class='kw'>def</span> <span class='id identifier rubyid_path'>path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='comment'># i don&#39;t know WHAT is wrong with this thing. it just is wrong.
</span> <span class='comment'># @sg-ignore
</span> <span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Path.html" title="Hyde::Path (class)">Path</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Path.html#initialize-instance_method" title="Hyde::Path#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Path.html" title="Hyde::Path (class)">Path</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Path.html#initialize-instance_method" title="Hyde::Path#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -737,8 +712,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>create a new <span class='object_link'><a href="../POSTHandler.html" title="Hyde::POSTHandler (class)">POSTHandler</a></span> object</p>
<p>create a new Handlers::POSTHandler object</p>
</div>
@ -752,15 +726,15 @@
<pre class="lines">
35
36
37</pre>
33
34
35</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 35</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 33</span>
<span class='kw'>def</span> <span class='id identifier rubyid_post'>post</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../POSTHandler.html" title="Hyde::POSTHandler (class)">POSTHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/POST.html" title="Hyde::Handlers::POST (class)">POST</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -778,8 +752,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span> object</p>
<p>Create a new Handlers::Probe object</p>
</div>
@ -793,15 +766,15 @@
<pre class="lines">
25
26
27</pre>
23
24
25</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 25</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 23</span>
<span class='kw'>def</span> <span class='id identifier rubyid_probe'>probe</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid__setup'>_setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'>Probe</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='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -819,8 +792,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../PUTHandler.html" title="Hyde::PUTHandler (class)">PUTHandler</a></span> object</p>
<p>Create a new Handlers::PUTHandler object</p>
</div>
@ -834,15 +806,15 @@
<pre class="lines">
40
41
42</pre>
38
39
40</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 40</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 38</span>
<span class='kw'>def</span> <span class='id identifier rubyid_put'>put</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../PUTHandler.html" title="Hyde::PUTHandler (class)">PUTHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/PUT.html" title="Hyde::Handlers::PUT (class)">PUT</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -860,8 +832,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Append a Node child object to the list of children</p>
<p>Append a Node child object to the list of children</p>
</div>
@ -884,7 +855,7 @@
15</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 9</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 9</span>
<span class='kw'>def</span> <span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span>
<span class='kw'>unless</span> <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></span>
@ -909,8 +880,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span> that serves static files</p>
<p>Create a new Handlers::GETHandler that serves static files</p>
</div>
@ -924,15 +894,15 @@
<pre class="lines">
75
76
77</pre>
73
74
75</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 75</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 73</span>
<span class='kw'>def</span> <span class='id identifier rubyid_serve'>serve</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../ServeHandler.html" title="Hyde::ServeHandler (class)">ServeHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../ServeHandler.html#initialize-instance_method" title="Hyde::ServeHandler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/Serve.html" title="Hyde::Handlers::Serve (class)">Serve</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Serve.html#initialize-instance_method" title="Hyde::Handlers::Serve#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -950,8 +920,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Create a new <span class='object_link'><a href="../TRACEHandler.html" title="Hyde::TRACEHandler (class)">TRACEHandler</a></span> object</p>
<p>Create a new Handlers::TRACEHandler object</p>
</div>
@ -965,15 +934,15 @@
<pre class="lines">
60
61
62</pre>
58
59
60</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_constructors.rb', line 60</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_path.rb', line 58</span>
<span class='kw'>def</span> <span class='id identifier rubyid_trace'>trace</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../TRACEHandler.html" title="Hyde::TRACEHandler (class)">TRACEHandler</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Handlers/TRACE.html" title="Hyde::Handlers::TRACE (class)">TRACE</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='ivar'>@origin</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -985,7 +954,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

65
doc/Hyde/DSL/PathMethods.html

@ -76,22 +76,21 @@
<dl>
<dt>Included in:</dt>
<dd><span class='object_link'><a href="../PathBinding.html" title="Hyde::PathBinding (class)">PathBinding</a></span></dd>
<dd><span class='object_link'><a href="../PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/path_methods.rb</dd>
<dd>lib/hyde/dsl/methods_path.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Common path methods</p>
<p>Common path methods</p>
</div>
@ -131,8 +130,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a filter to the path.</p>
<span class="summary_desc"><div class='inline'><p>Add a filter to the path.</p>
</div></span>
</li>
@ -155,8 +153,7 @@
<span class="summary_desc"><div class='inline'>
<p>Set path index.</p>
<span class="summary_desc"><div class='inline'><p>Set path index.</p>
</div></span>
</li>
@ -179,8 +176,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a postprocessor to the path.</p>
<span class="summary_desc"><div class='inline'><p>Add a postprocessor to the path.</p>
</div></span>
</li>
@ -203,8 +199,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a preprocessor to the path.</p>
<span class="summary_desc"><div class='inline'><p>Add a preprocessor to the path.</p>
</div></span>
</li>
@ -227,8 +222,7 @@
<span class="summary_desc"><div class='inline'>
<p>Set root path (without appending matched part).</p>
<span class="summary_desc"><div class='inline'><p>Set root path (without appending matched part).</p>
</div></span>
</li>
@ -251,8 +245,7 @@
<span class="summary_desc"><div class='inline'>
<p>Set root path (appends matched part of the path).</p>
<span class="summary_desc"><div class='inline'><p>Set root path (appends matched part of the path).</p>
</div></span>
</li>
@ -278,8 +271,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a filter to the path. Blocks path access if a filter returns false.</p>
<p>Add a filter to the path.
Blocks path access if a filter returns false.</p>
</div>
@ -329,7 +322,7 @@
58</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_methods.rb', line 55</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_path.rb', line 55</span>
<span class='kw'>def</span> <span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
@ -351,8 +344,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Set path index</p>
<p>Set path index</p>
</div>
@ -393,7 +385,7 @@
19</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_methods.rb', line 10</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_path.rb', line 10</span>
<span class='kw'>def</span> <span class='id identifier rubyid_index'>index</span><span class='lparen'>(</span><span class='id identifier rubyid_index'>index</span><span class='rparen'>)</span>
<span class='kw'>case</span> <span class='id identifier rubyid_index'>index</span>
@ -421,8 +413,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a postprocessor to the path.</p>
<p>Add a postprocessor to the path.</p>
</div>
@ -483,7 +474,7 @@
49</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_methods.rb', line 46</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_path.rb', line 46</span>
<span class='kw'>def</span> <span class='id identifier rubyid_postprocess'>postprocess</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_postprocess'>postprocess</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
@ -505,8 +496,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a preprocessor to the path. Does not modify path execution.</p>
<p>Add a preprocessor to the path.
Does not modify path execution.</p>
</div>
@ -556,7 +547,7 @@
40</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_methods.rb', line 37</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_path.rb', line 37</span>
<span class='kw'>def</span> <span class='id identifier rubyid_preprocess'>preprocess</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_preprocess'>preprocess</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
@ -578,8 +569,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Set root path (without appending matched part).</p>
<p>Set root path (without appending matched part).</p>
</div>
@ -598,8 +588,7 @@
&mdash;
<div class='inline'>
<p>ath [String</p>
<div class='inline'><p>ath [String</p>
</div>
</li>
@ -618,7 +607,7 @@
31</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_methods.rb', line 29</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_path.rb', line 29</span>
<span class='kw'>def</span> <span class='id identifier rubyid_remap'>remap</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_remap'>remap</span> <span class='op'>=</span> <span class='id identifier rubyid_path'>path</span>
@ -639,8 +628,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Set root path (appends matched part of the path).</p>
<p>Set root path (appends matched part of the path).</p>
</div>
@ -659,8 +647,7 @@
&mdash;
<div class='inline'>
<p>ath [String</p>
<div class='inline'><p>ath [String</p>
</div>
</li>
@ -679,7 +666,7 @@
25</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/path_methods.rb', line 23</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_path.rb', line 23</span>
<span class='kw'>def</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='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
<span class='ivar'>@origin</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> <span class='op'>=</span> <span class='id identifier rubyid_path'>path</span>
@ -694,7 +681,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

207
doc/Hyde/DSL/ProbeConstructors.html

@ -0,0 +1,207 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Module: Hyde::DSL::ProbeConstructors
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::DSL::ProbeConstructors";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../DSL.html" title="Hyde::DSL (module)">DSL</a></span></span>
&raquo;
<span class="title">ProbeConstructors</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Module: Hyde::DSL::ProbeConstructors
</h1>
<div class="box_info">
<dl>
<dt>Included in:</dt>
<dd><span class='object_link'><a href="../ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span>, <span class='object_link'><a href="../TemplateContext.html" title="Hyde::TemplateContext (class)">TemplateContext</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/constructors_probe.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe (and subclasses) DSL construct</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#erb-instance_method" title="#erb (instance method)">#<strong>erb</strong>(input, toplevel: nil, locals: nil) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Create a new erb template.</p>
</div></span>
</li>
</ul>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="erb-instance_method">
#<strong>erb</strong>(input, toplevel: nil, locals: nil) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Create a new erb template</p>
</div>
</div>
<div class="tags">
<p class="tag_title">See Also:</p>
<ul class="see">
<li>Template#new</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
9
10
11</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/constructors_probe.rb', line 9</span>
<span class='kw'>def</span> <span class='id identifier rubyid_erb'>erb</span><span class='lparen'>(</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='label'>toplevel:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>locals:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
<span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Templates.html" title="Hyde::Templates (module)">Templates</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Templates/ERB.html" title="Hyde::Templates::ERB (class)">ERB</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Templates/ERB.html#initialize-instance_method" title="Hyde::Templates::ERB#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='label'>toplevel:</span> <span class='id identifier rubyid_toplevel'>toplevel</span><span class='comma'>,</span> <span class='label'>locals:</span> <span class='id identifier rubyid_locals'>locals</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

333
doc/Hyde/DSL/ProbeMethods.html

@ -76,22 +76,21 @@
<dl>
<dt>Included in:</dt>
<dd><span class='object_link'><a href="../ProbeBinding.html" title="Hyde::ProbeBinding (class)">ProbeBinding</a></span></dd>
<dd><span class='object_link'><a href="../ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span>, <span class='object_link'><a href="../TemplateContext.html" title="Hyde::TemplateContext (class)">TemplateContext</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/probe_methods.rb</dd>
<dd>lib/hyde/dsl/methods_probe.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Common methods for Probe objects</p>
<p>Common methods for Probe objects</p>
</div>
@ -117,7 +116,30 @@
<li class="public ">
<span class="summary_signature">
<a href="#bounce-instance_method" title="#bounce (instance method)">#<strong>bounce</strong> &#x21d2; Object </a>
<a href="#file-instance_method" title="#file (instance method)">#<strong>file</strong>(path, mode = &quot;r&quot;, *all, &amp;block) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Open a file relative to current filepath.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#form-instance_method" title="#form (instance method)">#<strong>form</strong> &#x21d2; Hash{String=&gt;(String,Hyde::Util::FormPart)} </a>
@ -131,8 +153,7 @@
<span class="summary_desc"><div class='inline'>
<p>Bounce request to the next handler.</p>
<span class="summary_desc"><div class='inline'><p>Returns formdata.</p>
</div></span>
</li>
@ -141,7 +162,7 @@
<li class="public ">
<span class="summary_signature">
<a href="#die-instance_method" title="#die (instance method)">#<strong>die</strong>(errorcode, backtrace: nil) &#x21d2; Object </a>
<a href="#form%3F-instance_method" title="#form? (instance method)">#<strong>form?</strong> &#x21d2; Boolean </a>
@ -155,8 +176,7 @@
<span class="summary_desc"><div class='inline'>
<p>Stop execution and generate a boilerplate response with the given code.</p>
<span class="summary_desc"><div class='inline'><p>Checks if current request has multipart/form-data associated with it.</p>
</div></span>
</li>
@ -179,8 +199,7 @@
<span class="summary_desc"><div class='inline'>
<p>Set response header (generate response if one doesn’t exist yet).</p>
<span class="summary_desc"><div class='inline'><p>Set response header (generate response if one doesn&#39;t exist yet).</p>
</div></span>
</li>
@ -203,8 +222,7 @@
<span class="summary_desc"><div class='inline'>
<p>Delete a header value from the headers hash If no value is provided, deletes all key entries.</p>
<span class="summary_desc"><div class='inline'><p>Delete a header value from the headers hash If no value is provided, deletes all key entries.</p>
</div></span>
</li>
@ -227,8 +245,7 @@
<span class="summary_desc"><div class='inline'>
<p>Get the current request.</p>
<span class="summary_desc"><div class='inline'><p>Get the current request.</p>
</div></span>
</li>
@ -253,8 +270,7 @@
<span class="summary_desc"><div class='inline'>
<p>Set response status (generate response if one doesn’t exist yet).</p>
<span class="summary_desc"><div class='inline'><p>Set response status (generate response if one doesn&#39;t exist yet).</p>
</div></span>
</li>
@ -270,9 +286,9 @@
<div class="method_details first">
<h3 class="signature first" id="bounce-instance_method">
<h3 class="signature first" id="file-instance_method">
#<strong>bounce</strong> &#x21d2; <tt>Object</tt>
#<strong>file</strong>(path, mode = &quot;r&quot;, *all, &amp;block) &#x21d2; <tt>Object</tt>
@ -280,32 +296,20 @@
</h3><div class="docstring">
<div class="discussion">
<p>Bounce request to the next handler</p>
<p>Open a file relative to current filepath</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Raises:</p>
<ul class="raise">
<li>
<span class='type'>(<tt>UncaughtThrowError</tt>)</span>
&mdash;
<div class='inline'>
<p>throws :break to get out of the callback</p>
</div>
</li>
</ul>
<p class="tag_title">See Also:</p>
<ul class="see">
<li>File#open</li>
</ul>
</div><table class="source_code">
<tr>
@ -313,15 +317,15 @@
<pre class="lines">
31
32
33</pre>
88
89
90</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/probe_methods.rb', line 31</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 88</span>
<span class='kw'>def</span> <span class='id identifier rubyid_bounce'>bounce</span>
<span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:break</span>
<span class='kw'>def</span> <span class='id identifier rubyid_file'>file</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_mode'>mode</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>r</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_all'>all</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_filepath'>filepath</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_path'>path</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_mode'>mode</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_all'>all</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -329,9 +333,9 @@
</div>
<div class="method_details ">
<h3 class="signature " id="die-instance_method">
<h3 class="signature " id="form-instance_method">
#<strong>die</strong>(errorcode, backtrace: nil) &#x21d2; <tt>Object</tt>
#<strong>form</strong> &#x21d2; <tt>Hash{String=&gt;(String,<span class='object_link'><a href="../Util/FormPart.html" title="Hyde::Util::FormPart (class)">Hyde::Util::FormPart</a></span>)}</tt>
@ -339,57 +343,82 @@
</h3><div class="docstring">
<div class="discussion">
<p>Stop execution and generate a boilerplate response with the given code</p>
<p>Returns formdata</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>errorcode</span>
<span class='type'>(<tt>Integer</tt>)</span>
</li>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='name'>backtrace</span>
<span class='type'>(<tt>Hash{String=&gt;(String,<span class='object_link'><a href="../Util/FormPart.html" title="Hyde::Util::FormPart (class)">Hyde::Util::FormPart</a></span>)}</tt>)</span>
<span class='type'>(<tt>Array(String)</tt>, <tt>nil</tt>)</span>
<em class="default">(defaults to: <tt>nil</tt>)</em>
</li>
</ul>
<p class="tag_title">Raises:</p>
<ul class="raise">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
79
80
81
82
83
84</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 79</span>
<span class='kw'>def</span> <span class='id identifier rubyid_form'>form</span>
<span class='id identifier rubyid__'>_</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Util.html" title="Hyde::Util (module)">Util</a></span></span><span class='period'>.</span><span class='id identifier rubyid_parse_value'><span class='object_link'><a href="../Util.html#parse_value-class_method" title="Hyde::Util.parse_value (method)">parse_value</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>content-type</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
<span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Util.html" title="Hyde::Util (module)">Util</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Util/MultipartParser.html" title="Hyde::Util::MultipartParser (class)">MultipartParser</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Util/MultipartParser.html#initialize-instance_method" title="Hyde::Util::MultipartParser#initialize (method)">new</a></span></span><span class='lparen'>(</span>
<span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>boundary</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
<span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_h'><span class='object_link'><a href="../Util/MultipartParser.html#to_h-instance_method" title="Hyde::Util::MultipartParser#to_h (method)">to_h</a></span></span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="form?-instance_method">
#<strong>form?</strong> &#x21d2; <tt>Boolean</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Checks if current request has multipart/form-data associated with it</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>UncaughtThrowError</tt>)</span>
<span class='type'>(<tt>Boolean</tt>)</span>
&mdash;
<div class='inline'>
<p>throws :finish to return back to Server</p>
</div>
</li>
</ul>
@ -400,27 +429,27 @@
<pre class="lines">
19
20
21
22
23
24
25
26
27</pre>
67
68
69
70
71
72
73
74
75</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/probe_methods.rb', line 19</span>
<span class='kw'>def</span> <span class='id identifier rubyid_die'>die</span><span class='lparen'>(</span><span class='id identifier rubyid_errorcode'>errorcode</span><span class='comma'>,</span> <span class='label'>backtrace:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
<span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:finish</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_errorcode'>errorcode</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span>
<span class='op'>*</span><span class='lparen'>(</span><span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handle.</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_errorcode'>errorcode</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span> <span class='kw'>or</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_properties'>properties</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>handle.default</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span>
<span class='id identifier rubyid_errorcode'>errorcode</span><span class='comma'>,</span>
<span class='label'>backtrace:</span> <span class='id identifier rubyid_backtrace'>backtrace</span>
<span class='rparen'>)</span>
<span class='rparen'>)</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 67</span>
<span class='kw'>def</span> <span class='id identifier rubyid_form?'>form?</span>
<span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Util.html" title="Hyde::Util (module)">Util</a></span></span><span class='period'>.</span><span class='id identifier rubyid_parse_value'><span class='object_link'><a href="../Util.html#parse_value-class_method" title="Hyde::Util.parse_value (method)">parse_value</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>content-type</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
<span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>multipart/form-data</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>and</span>
<span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>boundary</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
<span class='kw'>true</span>
<span class='kw'>else</span>
<span class='kw'>false</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -438,8 +467,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Set response header (generate response if one doesn’t exist yet)</p>
<p>Set response header (generate response if one doesn&#39;t exist yet)</p>
</div>
@ -458,8 +486,7 @@
&mdash;
<div class='inline'>
<p>header name</p>
<div class='inline'><p>header name</p>
</div>
</li>
@ -474,8 +501,7 @@
&mdash;
<div class='inline'>
<p>header value</p>
<div class='inline'><p>header value</p>
</div>
</li>
@ -489,24 +515,24 @@
<pre class="lines">
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61</pre>
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/probe_methods.rb', line 47</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 29</span>
<span class='kw'>def</span> <span class='id identifier rubyid_header'>header</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
<span class='kw'>return</span> <span class='id identifier rubyid_status'>status</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_key'>key</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>status</span><span class='tstring_end'>&quot;</span></span>
@ -539,8 +565,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Delete a header value from the headers hash If no value is provided, deletes all key entries</p>
<p>Delete a header value from the headers hash
If no value is provided, deletes all key entries</p>
</div>
@ -559,8 +585,7 @@
&mdash;
<div class='inline'>
<p>header name</p>
<div class='inline'><p>header name</p>
</div>
</li>
@ -577,8 +602,7 @@
&mdash;
<div class='inline'>
<p>header value</p>
<div class='inline'><p>header value</p>
</div>
</li>
@ -592,24 +616,24 @@
<pre class="lines">
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81</pre>
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/probe_methods.rb', line 67</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 49</span>
<span class='kw'>def</span> <span class='id identifier rubyid_remove_header'>remove_header</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
<span class='kw'>return</span> <span class='kw'>unless</span> <span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span>
@ -642,8 +666,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Get the current request</p>
<p>Get the current request</p>
</div>
@ -670,12 +693,12 @@
<pre class="lines">
11
12
13</pre>
13
14
15</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/probe_methods.rb', line 11</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 13</span>
<span class='kw'>def</span> <span class='id identifier rubyid_request'>request</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span>
@ -700,8 +723,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Set response status (generate response if one doesn’t exist yet)</p>
<p>Set response status (generate response if one doesn&#39;t exist yet)</p>
</div>
@ -720,8 +742,7 @@
&mdash;
<div class='inline'>
<p>http status code</p>
<div class='inline'><p>http status code</p>
</div>
</li>
@ -735,17 +756,17 @@
<pre class="lines">
37
38
39
40</pre>
19
20
21
22</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/probe_methods.rb', line 37</span>
<pre class="code"><span class="info file"># File 'lib/hyde/dsl/methods_probe.rb', line 19</span>
<span class='kw'>def</span> <span class='id identifier rubyid_status'>status</span><span class='lparen'>(</span><span class='id identifier rubyid_status'>status</span><span class='rparen'>)</span>
<span class='ivar'>@response</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='ivar'>@response</span> <span class='kw'>or</span> <span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Response.html" title="Hyde::Response (class)">Response</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Response.html#initialize-instance_method" title="Hyde::Response#initialize (method)">new</a></span></span><span class='rparen'>)</span>
<span class='ivar'>@response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span> <span class='op'>=</span> <span class='id identifier rubyid_status'>status</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span> <span class='kw'>or</span> <span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Response.html" title="Hyde::Response (class)">Response</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../Response.html#initialize-instance_method" title="Hyde::Response#initialize (method)">new</a></span></span><span class='rparen'>)</span>
<span class='ivar'>@origin</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span> <span class='op'>=</span> <span class='id identifier rubyid_status'>status</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -757,7 +778,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

105
doc/Hyde/DSL/TemplateMethods.html

@ -0,0 +1,105 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Module: Hyde::DSL::TemplateMethods
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::DSL::TemplateMethods";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (T)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../DSL.html" title="Hyde::DSL (module)">DSL</a></span></span>
&raquo;
<span class="title">TemplateMethods</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Module: Hyde::DSL::TemplateMethods
</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/dsl/methods_template.rb</dd>
</dl>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

10
doc/Hyde/GETHandler.html

@ -328,16 +328,16 @@
<pre class="lines">
24
25
26
27
28
29
30
31
32</pre>
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/http_method.rb', line 26</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/http_method.rb', line 24</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='kw'>unless</span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_request_method'>request_method</span><span class='period'>.</span><span class='id identifier rubyid_casecmp'>casecmp</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='op'>::</span><span class='const'>METHOD</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_zero?'>zero?</span>
@ -356,7 +356,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 01:10:17 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/HEADHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

30
doc/Hyde/Handler.html

@ -340,20 +340,20 @@
<pre class="lines">
11
12
13
14
15
16
17</pre>
16</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 12</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 11</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_exec'>exec</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
<span class='ivar'>@callback</span> <span class='op'>=</span> <span class='id identifier rubyid_exec'>exec</span>
<span class='ivar'>@binding</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ProbeBinding.html" title="Hyde::ProbeBinding (class)">ProbeBinding</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="ProbeBinding.html#initialize-instance_method" title="Hyde::ProbeBinding#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='ivar'>@context</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="ProbeContext.html#initialize-instance_method" title="Hyde::ProbeContext#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='ivar'>@response</span> <span class='op'>=</span> <span class='kw'>nil</span>
<span class='kw'>end</span></pre>
</td>
@ -394,12 +394,12 @@
<pre class="lines">
19
20
21
22</pre>
21</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 20</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 19</span>
<span class='kw'>def</span> <span class='id identifier rubyid_request'>request</span>
<span class='ivar'>@request</span>
@ -437,12 +437,12 @@
<pre class="lines">
18
19
20
21</pre>
20</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 19</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 18</span>
<span class='kw'>def</span> <span class='id identifier rubyid_response'>response</span>
<span class='ivar'>@response</span>
@ -549,6 +549,7 @@
<pre class="lines">
35
36
37
38
@ -565,11 +566,10 @@
49
50
51
52
53</pre>
52</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 36</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 35</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='ivar'>@response</span> <span class='op'>=</span> <span class='kw'>nil</span>
@ -577,7 +577,7 @@
<span class='ivar'>@request</span> <span class='op'>=</span> <span class='id identifier rubyid_request'>request</span>
<span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_catch'>catch</span><span class='lparen'>(</span><span class='symbol'>:break</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='ivar'>@binding</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_splat'>splat</span><span class='comma'>,</span>
<span class='ivar'>@context</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_splat'>splat</span><span class='comma'>,</span>
<span class='op'>**</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_param'>param</span><span class='comma'>,</span>
<span class='op'>&amp;</span><span class='ivar'>@callback</span><span class='rparen'>)</span>
<span class='kw'>end</span>
@ -599,7 +599,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 01:10:17 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

127
doc/Hyde/Handlers.html

@ -0,0 +1,127 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Module: Hyde::Handlers
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (H)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">Handlers</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Module: Hyde::Handlers
</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe.rb<span class="defines">,<br />
lib/hyde/probe/handler.rb,<br /> lib/hyde/probe/http_method.rb,<br /> lib/hyde/probe/serve_handler.rb</span>
</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>All subclasses of Hyde::Probe that respond to requests</p>
</div>
</div>
<div class="tags">
</div><h2>Defined Under Namespace</h2>
<p class="children">
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Handlers/CONNECT.html" title="Hyde::Handlers::CONNECT (class)">CONNECT</a></span>, <span class='object_link'><a href="Handlers/DELETE.html" title="Hyde::Handlers::DELETE (class)">DELETE</a></span>, <span class='object_link'><a href="Handlers/GET.html" title="Hyde::Handlers::GET (class)">GET</a></span>, <span class='object_link'><a href="Handlers/HEAD.html" title="Hyde::Handlers::HEAD (class)">HEAD</a></span>, <span class='object_link'><a href="Handlers/Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span>, <span class='object_link'><a href="Handlers/OPTIONS.html" title="Hyde::Handlers::OPTIONS (class)">OPTIONS</a></span>, <span class='object_link'><a href="Handlers/PATCH.html" title="Hyde::Handlers::PATCH (class)">PATCH</a></span>, <span class='object_link'><a href="Handlers/POST.html" title="Hyde::Handlers::POST (class)">POST</a></span>, <span class='object_link'><a href="Handlers/PUT.html" title="Hyde::Handlers::PUT (class)">PUT</a></span>, <span class='object_link'><a href="Handlers/Serve.html" title="Hyde::Handlers::Serve (class)">Serve</a></span>, <span class='object_link'><a href="Handlers/TRACE.html" title="Hyde::Handlers::TRACE (class)">TRACE</a></span>
</p>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/CONNECT.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::CONNECT
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::CONNECT";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (C)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">CONNECT</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::CONNECT
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::CONNECT</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a CONNECT</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>CONNECT</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/DELETE.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::DELETE
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::DELETE";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (D)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">DELETE</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::DELETE
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::DELETE</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a DELETE</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>DELETE</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

360
doc/Hyde/Handlers/GET.html

@ -0,0 +1,360 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::GET
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::GET";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (G)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">GET</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::GET
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next">Hyde::Handlers::GET</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a GET</p>
</div>
</div>
<div class="tags">
</div><div id="subclasses">
<h2>Direct Known Subclasses</h2>
<p class="children"><span class='object_link'><a href="CONNECT.html" title="Hyde::Handlers::CONNECT (class)">CONNECT</a></span>, <span class='object_link'><a href="DELETE.html" title="Hyde::Handlers::DELETE (class)">DELETE</a></span>, <span class='object_link'><a href="HEAD.html" title="Hyde::Handlers::HEAD (class)">HEAD</a></span>, <span class='object_link'><a href="OPTIONS.html" title="Hyde::Handlers::OPTIONS (class)">OPTIONS</a></span>, <span class='object_link'><a href="PATCH.html" title="Hyde::Handlers::PATCH (class)">PATCH</a></span>, <span class='object_link'><a href="POST.html" title="Hyde::Handlers::POST (class)">POST</a></span>, <span class='object_link'><a href="PUT.html" title="Hyde::Handlers::PUT (class)">PUT</a></span>, <span class='object_link'><a href="TRACE.html" title="Hyde::Handlers::TRACE (class)">TRACE</a></span></p>
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>GET</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#process-instance_method" title="#process (instance method)">#<strong>process</strong>(request) &#x21d2; Boolean </a>
</span>
<span class="summary_desc"><div class='inline'><p>Method callback on successful request navigation.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="process-instance_method">
#<strong>process</strong>(request) &#x21d2; <tt>Boolean</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on successful request navigation.
Runs block supplied with object initialization.
Request&#39;s #splat and #param are passed to block.</p>
<p>Callback&#39;s returned should be one of viable responses:</p>
<ul>
<li><span class='object_link'><a href="../Response.html" title="Hyde::Response (class)">Response</a></span> object</li>
<li>An array that matches Rack return form</li>
<li>An array that matches old (Rack 2.x) return form</li>
<li>A string (returned as HTML with code 200)</li>
<li>false (bounces the request to next handler)</li>
</ul>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>request</span>
<span class='type'>(<tt><span class='object_link'><a href="../Request.html" title="Hyde::Request (class)">Hyde::Request</a></span></tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Boolean</tt>)</span>
&mdash;
<div class='inline'><p>true if further navigation is possible</p>
</div>
</li>
</ul>
<p class="tag_title">Raises:</p>
<ul class="raise">
<li>
<span class='type'>(<tt>UncaughtThrowError</tt>)</span>
&mdash;
<div class='inline'><p>may raise if die() is called.</p>
</div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
25
26
27
28
29
30
31</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/http_method.rb', line 25</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='kw'>unless</span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_request_method'>request_method</span><span class='period'>.</span><span class='id identifier rubyid_casecmp'>casecmp</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='op'>::</span><span class='const'>METHOD</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_zero?'>zero?</span>
<span class='kw'>return</span> <span class='kw'>false</span>
<span class='kw'>end</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/HEAD.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::HEAD
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::HEAD";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (H)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">HEAD</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::HEAD
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::HEAD</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a HEAD</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>HEAD</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

597
doc/Hyde/Handlers/Handler.html

@ -0,0 +1,597 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::Handler
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::Handler";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (H)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">Handler</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::Handler
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next">Hyde::Handlers::Handler</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/handler.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes a callback on request</p>
</div>
</div>
<div class="tags">
</div><div id="subclasses">
<h2>Direct Known Subclasses</h2>
<p class="children"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></p>
</div>
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#request-instance_method" title="#request (instance method)">#<strong>request</strong> &#x21d2; Object </a>
</span>
<span class="note title readonly">readonly</span>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute request.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#response-instance_method" title="#response (instance method)">#<strong>response</strong> &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute response.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(path, parent:, &amp;exec) &#x21d2; Handler </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of Handler.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#process-instance_method" title="#process (instance method)">#<strong>process</strong>(request) &#x21d2; Boolean </a>
</span>
<span class="summary_desc"><div class='inline'><p>Method callback on successful request navigation.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(path, parent:, &amp;exec) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::Handlers::Handler (class)">Handler</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Handler.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>path</span>
<span class='type'>(<tt>Object</tt>)</span>
</li>
<li>
<span class='name'>parent</span>
<span class='type'>(<tt><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Hyde::Node</a></span></tt>)</span>
</li>
<li>
<span class='name'>exec</span>
<span class='type'>(<tt>#call</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
12
13
14
15
16
17</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 12</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_exec'>exec</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
<span class='ivar'>@callback</span> <span class='op'>=</span> <span class='id identifier rubyid_exec'>exec</span>
<span class='ivar'>@context</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="../ProbeContext.html#initialize-instance_method" title="Hyde::ProbeContext#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='ivar'>@response</span> <span class='op'>=</span> <span class='kw'>nil</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_attr_details" class="attr_details">
<h2>Instance Attribute Details</h2>
<span id=""></span>
<div class="method_details first">
<h3 class="signature first" id="request-instance_method">
#<strong>request</strong> &#x21d2; <tt>Object</tt> <span class="extras">(readonly)</span>
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute request.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
20
21
22</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 20</span>
<span class='kw'>def</span> <span class='id identifier rubyid_request'>request</span>
<span class='ivar'>@request</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<span id="response=-instance_method"></span>
<div class="method_details ">
<h3 class="signature " id="response-instance_method">
#<strong>response</strong> &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute response.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
19
20
21</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 19</span>
<span class='kw'>def</span> <span class='id identifier rubyid_response'>response</span>
<span class='ivar'>@response</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="process-instance_method">
#<strong>process</strong>(request) &#x21d2; <tt>Boolean</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on successful request navigation.
Runs block supplied with object initialization.
Request&#39;s #splat and #param are passed to block.</p>
<p>Callback&#39;s returned should be one of viable responses:</p>
<ul>
<li><span class='object_link'><a href="../Response.html" title="Hyde::Response (class)">Response</a></span> object</li>
<li>An array that matches Rack return form</li>
<li>An array that matches old (Rack 2.x) return form</li>
<li>A string (returned as HTML with code 200)</li>
<li>false (bounces the request to next handler)</li>
</ul>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>request</span>
<span class='type'>(<tt><span class='object_link'><a href="../Request.html" title="Hyde::Request (class)">Hyde::Request</a></span></tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Boolean</tt>)</span>
&mdash;
<div class='inline'><p>true if further navigation is possible</p>
</div>
</li>
</ul>
<p class="tag_title">Raises:</p>
<ul class="raise">
<li>
<span class='type'>(<tt>UncaughtThrowError</tt>)</span>
&mdash;
<div class='inline'><p>may raise if die() is called.</p>
</div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/handler.rb', line 36</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='ivar'>@response</span> <span class='op'>=</span> <span class='kw'>nil</span>
<span class='kw'>return</span> <span class='id identifier rubyid_reject'>reject</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/?$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span>
<span class='ivar'>@request</span> <span class='op'>=</span> <span class='id identifier rubyid_request'>request</span>
<span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_catch'>catch</span><span class='lparen'>(</span><span class='symbol'>:break</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='ivar'>@context</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_splat'>splat</span><span class='comma'>,</span>
<span class='op'>**</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_param'>param</span><span class='comma'>,</span>
<span class='op'>&amp;</span><span class='ivar'>@callback</span><span class='rparen'>)</span>
<span class='kw'>end</span>
<span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='id identifier rubyid_response'>response</span>
<span class='kw'>if</span> <span class='ivar'>@response</span> <span class='kw'>and</span> <span class='lbracket'>[</span><span class='const'>String</span><span class='comma'>,</span> <span class='const'>File</span><span class='comma'>,</span> <span class='const'>IO</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span>
<span class='ivar'>@response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_response'>response</span>
<span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:finish</span><span class='comma'>,</span> <span class='ivar'>@response</span>
<span class='kw'>end</span>
<span class='id identifier rubyid_throw'>throw</span> <span class='symbol'>:finish</span><span class='comma'>,</span> <span class='id identifier rubyid_response'>response</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/OPTIONS.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::OPTIONS
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::OPTIONS";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (O)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">OPTIONS</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::OPTIONS
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::OPTIONS</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a OPTIONS</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>OPTIONS</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/PATCH.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::PATCH
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::PATCH";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">PATCH</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::PATCH
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::PATCH</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a PATCH</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>PATCH</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/POST.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::POST
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::POST";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">POST</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::POST
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::POST</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a POST</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>POST</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/PUT.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::PUT
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::PUT";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">PUT</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::PUT
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::PUT</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a PUT</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>PUT</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

469
doc/Hyde/Handlers/Serve.html

@ -0,0 +1,469 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::Serve
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::Serve";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (S)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">Serve</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::Serve
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next">Hyde::Handlers::Serve</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/serve_handler.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that sends files from a location</p>
</div>
</div>
<div class="tags">
</div>
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#response-instance_method" title="#response (instance method)">#<strong>response</strong> &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute response.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(path, parent:) &#x21d2; Serve </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of Serve.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#process-instance_method" title="#process (instance method)">#<strong>process</strong>(request) &#x21d2; Boolean </a>
</span>
<span class="summary_desc"><div class='inline'><p>Method callback on successful request navigation.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(path, parent:) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::Handlers::Serve (class)">Serve</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Serve.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>path</span>
<span class='type'>(<tt>Object</tt>)</span>
</li>
<li>
<span class='name'>parent</span>
<span class='type'>(<tt><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Hyde::Node</a></span></tt>)</span>
</li>
<li>
<span class='name'>exec</span>
<span class='type'>(<tt>#call</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
12
13
14</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 12</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_attr_details" class="attr_details">
<h2>Instance Attribute Details</h2>
<span id="response=-instance_method"></span>
<div class="method_details first">
<h3 class="signature first" id="response-instance_method">
#<strong>response</strong> &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute response.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
16
17
18</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 16</span>
<span class='kw'>def</span> <span class='id identifier rubyid_response'>response</span>
<span class='ivar'>@response</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="process-instance_method">
#<strong>process</strong>(request) &#x21d2; <tt>Boolean</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on successful request navigation.
Tries to serve files matched by handler</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>request</span>
<span class='type'>(<tt><span class='object_link'><a href="../Request.html" title="Hyde::Request (class)">Hyde::Request</a></span></tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Boolean</tt>)</span>
&mdash;
<div class='inline'><p>true if file was found</p>
</div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
22
23
24
25
26
27
28
29</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 22</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_expand_path'>expand_path</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_filepath'>filepath</span><span class='rparen'>)</span>
<span class='kw'>return</span> <span class='kw'>unless</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_start_with?'>start_with?</span> <span class='ivar'>@properties</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>path</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
<span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_delete_suffix'>delete_suffix</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>rescue</span> <span class='const'>StandardError</span>
<span class='kw'>false</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

220
doc/Hyde/Handlers/TRACE.html

@ -0,0 +1,220 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Handlers::TRACE
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Handlers::TRACE";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (T)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span></span>
&raquo;
<span class="title">TRACE</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Handlers::TRACE
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></li>
<li class="next"><span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></li>
<li class="next"><span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></li>
<li class="next"><span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></li>
<li class="next">Hyde::Handlers::TRACE</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe/http_method.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Probe that executes callback on a TRACE</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Constant Summary
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
</h2>
<dl class="constants">
<dt id="METHOD-constant" class="">METHOD =
</dt>
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>TRACE</span><span class='tstring_end'>&quot;</span></span></pre></dd>
</dl>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>, <span class='object_link'><a href="Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span></p>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>, <span class='object_link'><a href="../Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span></p>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="GET.html" title="Hyde::Handlers::GET (class)">GET</a></span></h3>
<p class="inherited"><span class='object_link'><a href="GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Probe.html" title="Hyde::Probe (class)">Probe</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Node.html" title="Hyde::Node (class)">Node</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Node.html#go-instance_method" title="Hyde::Node#go (method)">#go</a></span>, <span class='object_link'><a href="../Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>, <span class='object_link'><a href="../Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>, <span class='object_link'><a href="../Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">Hyde::Handlers::Handler</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

48
doc/Hyde/Node.html

@ -105,8 +105,10 @@
<strong>This class is abstract.</strong>
<div class='inline'></div>
</div>
<p>Abstract class that reacts to request navigation.
Does nothing by default, behaviour should be overriden through</p>
<p>Abstract class that reacts to request navigation. Does nothing by default, behaviour should be overriden through #reject and #process</p>
<h1 id="reject-and-process">reject and #process</h1>
</div>
@ -145,8 +147,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute remap.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute remap.</p>
</div></span>
</li>
@ -172,8 +173,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute root.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute root.</p>
</div></span>
</li>
@ -209,8 +209,7 @@
<span class="summary_desc"><div class='inline'>
<p>Try to navigate the path.</p>
<span class="summary_desc"><div class='inline'><p>Try to navigate the path.</p>
</div></span>
</li>
@ -235,8 +234,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Node.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Node.</p>
</div></span>
</li>
@ -259,8 +257,7 @@
<span class="summary_desc"><div class='inline'>
<p>Method callback on successful request navigation.</p>
<span class="summary_desc"><div class='inline'><p>Method callback on successful request navigation.</p>
</div></span>
</li>
@ -283,8 +280,7 @@
<span class="summary_desc"><div class='inline'>
<p>Method callback on failed request navigation.</p>
<span class="summary_desc"><div class='inline'><p>Method callback on failed request navigation.</p>
</div></span>
</li>
@ -307,8 +303,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Node.</p>
<p>Returns a new instance of Node.</p>
</div>
@ -376,8 +371,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute remap.</p>
<p>Returns the value of attribute remap.</p>
</div>
@ -419,8 +413,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute root.</p>
<p>Returns the value of attribute root.</p>
</div>
@ -467,8 +460,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Try to navigate the path. Run method callback in response.</p>
<p>Try to navigate the path. Run method callback in response.</p>
</div>
@ -562,8 +554,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on successful request navigation</p>
<p>Method callback on successful request navigation</p>
</div>
@ -596,8 +587,7 @@
<div class='inline'>
<p>true</p>
<div class='inline'><p>true</p>
</div>
</li>
@ -636,8 +626,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on failed request navigation</p>
<p>Method callback on failed request navigation</p>
</div>
@ -670,8 +659,7 @@
<div class='inline'>
<p>false</p>
<div class='inline'><p>false</p>
</div>
</li>
@ -704,7 +692,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/OPTIONSHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/PATCHHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/POSTHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/Hyde/PUTHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

176
doc/Hyde/Path.html

@ -103,8 +103,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Primary building block of request navigation.</p>
<p>Primary building block of request navigation.</p>
</div>
@ -125,10 +124,15 @@
<dl class="constants">
<dt id="Binding-constant" class="">Binding =
<dt id="ProcContext-constant" class="">ProcContext =
</dt>
<dd><pre class="code"><span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="PathBinding.html" title="Hyde::PathBinding (class)">PathBinding</a></span></span></pre></dd>
<dd><pre class="code"><span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ProcessorContext.html" title="Hyde::ProcessorContext (class)">ProcessorContext</a></span></span></pre></dd>
<dt id="Context-constant" class="">Context =
</dt>
<dd><pre class="code"><span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span></span></pre></dd>
</dl>
@ -161,8 +165,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute children.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute children.</p>
</div></span>
</li>
@ -190,8 +193,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute properties.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute properties.</p>
</div></span>
</li>
@ -232,8 +234,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a filter to the path.</p>
<span class="summary_desc"><div class='inline'><p>Add a filter to the path.</p>
</div></span>
</li>
@ -258,8 +259,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Path.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Path.</p>
</div></span>
</li>
@ -282,8 +282,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a postprocessor to the path.</p>
<span class="summary_desc"><div class='inline'><p>Add a postprocessor to the path.</p>
</div></span>
</li>
@ -306,8 +305,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a preprocessor to the path.</p>
<span class="summary_desc"><div class='inline'><p>Add a preprocessor to the path.</p>
</div></span>
</li>
@ -330,8 +328,7 @@
<span class="summary_desc"><div class='inline'>
<p>Method callback on successful request navigation.</p>
<span class="summary_desc"><div class='inline'><p>Method callback on successful request navigation.</p>
</div></span>
</li>
@ -365,8 +362,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Path.</p>
<p>Returns a new instance of Path.</p>
</div>
@ -385,8 +381,7 @@
&mdash;
<div class='inline'>
<p>Object to generate <span class='object_link'><a href="Pattern.html" title="Hyde::Pattern (class)">Hyde::Pattern</a></span> from</p>
<div class='inline'><p>Object to generate <span class='object_link'><a href="Pattern.html" title="Hyde::Pattern (class)">Hyde::Pattern</a></span> from</p>
</div>
</li>
@ -401,8 +396,7 @@
&mdash;
<div class='inline'>
<p>Parent object to inherit properties to</p>
<div class='inline'><p>Parent object to inherit properties to</p>
</div>
</li>
@ -417,8 +411,7 @@
&mdash;
<div class='inline'>
<p>Setup block</p>
<div class='inline'><p>Setup block</p>
</div>
</li>
@ -432,21 +425,22 @@
<pre class="lines">
27
28
29
30
31
32
33
34
35
36
37
38</pre>
38
39
40
41
42
43
44
45
46
47
48
49
50</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 27</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 38</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
@ -456,9 +450,10 @@
</span> <span class='ivar'>@preprocessors</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
<span class='ivar'>@postprocessors</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
<span class='ivar'>@filters</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
<span class='id identifier rubyid_binding'>binding</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="#Binding-constant" title="Hyde::Path::Binding (constant)">Binding</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='id identifier rubyid_binding'>binding</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='comment'># Contexts setup
</span> <span class='id identifier rubyid_context'>context</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='op'>::</span><span class='const'>Context</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='id identifier rubyid_context'>context</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='ivar'>@proccontext</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='op'>::</span><span class='const'>ProcContext</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -483,8 +478,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute children.</p>
<p>Returns the value of attribute children.</p>
</div>
@ -498,12 +492,12 @@
<pre class="lines">
86
87
88</pre>
98
99
100</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 86</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 98</span>
<span class='kw'>def</span> <span class='id identifier rubyid_children'>children</span>
<span class='ivar'>@children</span>
@ -526,8 +520,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute properties.</p>
<p>Returns the value of attribute properties.</p>
</div>
@ -541,12 +534,12 @@
<pre class="lines">
86
87
88</pre>
98
99
100</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 86</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 98</span>
<span class='kw'>def</span> <span class='id identifier rubyid_properties'>properties</span>
<span class='ivar'>@properties</span>
@ -574,8 +567,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a filter to the path. Blocks path access if a filter returns false.</p>
<p>Add a filter to the path.
Blocks path access if a filter returns false.</p>
</div>
@ -619,12 +612,12 @@
<pre class="lines">
82
83
84</pre>
94
95
96</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 82</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 94</span>
<span class='kw'>def</span> <span class='id identifier rubyid_filter'>filter</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='ivar'>@filters</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
@ -645,8 +638,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a postprocessor to the path.</p>
<p>Add a postprocessor to the path.</p>
</div>
@ -701,12 +693,12 @@
<pre class="lines">
74
75
76</pre>
86
87
88</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 74</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 86</span>
<span class='kw'>def</span> <span class='id identifier rubyid_postprocess'>postprocess</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='ivar'>@postprocessors</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
@ -727,8 +719,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a preprocessor to the path. Does not modify path execution.</p>
<p>Add a preprocessor to the path.
Does not modify path execution.</p>
</div>
@ -772,12 +764,12 @@
<pre class="lines">
66
67
68</pre>
78
79
80</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 66</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 78</span>
<span class='kw'>def</span> <span class='id identifier rubyid_preprocess'>preprocess</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
<span class='ivar'>@preprocessors</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
@ -798,8 +790,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on successful request navigation. Finds the next appropriate path to go to.</p>
<p>Method callback on successful request navigation.
Finds the next appropriate path to go to.</p>
</div>
@ -817,8 +809,7 @@
&mdash;
<div class='inline'>
<p>true if further navigation will be done</p>
<div class='inline'><p>true if further navigation will be done</p>
</div>
</li>
@ -835,8 +826,7 @@
&mdash;
<div class='inline'>
<p>by default throws :response if no matches found.</p>
<div class='inline'><p>by default throws :response if no matches found.</p>
</div>
</li>
@ -849,26 +839,26 @@
<pre class="lines">
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60</pre>
60
61
62
63
64
65
66
67
68
69
70
71
72</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 44</span>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 56</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='id identifier rubyid_run_filters'>run_filters</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
@ -897,7 +887,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

242
doc/Hyde/PathContext.html

@ -0,0 +1,242 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::PathContext
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::PathContext";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">PathContext</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::PathContext
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Hyde::PathContext</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Includes:</dt>
<dd><span class='object_link'><a href="DSL/PathConstructors.html" title="Hyde::DSL::PathConstructors (module)">DSL::PathConstructors</a></span>, <span class='object_link'><a href="DSL/PathMethods.html" title="Hyde::DSL::PathMethods (module)">DSL::PathMethods</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/path.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Execution context for path setup block.</p>
</div>
</div>
<div class="tags">
</div><div id="subclasses">
<h2>Direct Known Subclasses</h2>
<p class="children"><span class='object_link'><a href="ServerContext.html" title="Hyde::ServerContext (class)">ServerContext</a></span></p>
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(path) &#x21d2; PathContext </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of PathContext.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/PathMethods.html" title="Hyde::DSL::PathMethods (module)">DSL::PathMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/PathMethods.html#filter-instance_method" title="Hyde::DSL::PathMethods#filter (method)">#filter</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#index-instance_method" title="Hyde::DSL::PathMethods#index (method)">#index</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#postprocess-instance_method" title="Hyde::DSL::PathMethods#postprocess (method)">#postprocess</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#preprocess-instance_method" title="Hyde::DSL::PathMethods#preprocess (method)">#preprocess</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#remap-instance_method" title="Hyde::DSL::PathMethods#remap (method)">#remap</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#root-instance_method" title="Hyde::DSL::PathMethods#root (method)">#root</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/PathConstructors.html" title="Hyde::DSL::PathConstructors (module)">DSL::PathConstructors</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/PathConstructors.html#connect-instance_method" title="Hyde::DSL::PathConstructors#connect (method)">#connect</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#delete-instance_method" title="Hyde::DSL::PathConstructors#delete (method)">#delete</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#get-instance_method" title="Hyde::DSL::PathConstructors#get (method)">#get</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#head-instance_method" title="Hyde::DSL::PathConstructors#head (method)">#head</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#options-instance_method" title="Hyde::DSL::PathConstructors#options (method)">#options</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#patch-instance_method" title="Hyde::DSL::PathConstructors#patch (method)">#patch</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#path-instance_method" title="Hyde::DSL::PathConstructors#path (method)">#path</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#post-instance_method" title="Hyde::DSL::PathConstructors#post (method)">#post</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#probe-instance_method" title="Hyde::DSL::PathConstructors#probe (method)">#probe</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#put-instance_method" title="Hyde::DSL::PathConstructors#put (method)">#put</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#register-instance_method" title="Hyde::DSL::PathConstructors#register (method)">#register</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#serve-instance_method" title="Hyde::DSL::PathConstructors#serve (method)">#serve</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#trace-instance_method" title="Hyde::DSL::PathConstructors#trace (method)">#trace</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(path) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::PathContext (class)">PathContext</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of PathContext.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
25
26
27</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 25</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span> <span class='op'>=</span> <span class='id identifier rubyid_path'>path</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

57
doc/Hyde/Pattern.html

@ -101,8 +101,8 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Delegate class for all available patterns. Picks appropriate pattern based on contents.</p>
<p>Delegate class for all available patterns.
Picks appropriate pattern based on contents.</p>
</div>
@ -144,8 +144,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Pattern.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Pattern.</p>
</div></span>
</li>
@ -168,8 +167,7 @@
<span class="summary_desc"><div class='inline'>
<p>Match the string and assign matches to parameters.</p>
<span class="summary_desc"><div class='inline'><p>Match the string and assign matches to parameters.</p>
</div></span>
</li>
@ -192,8 +190,7 @@
<span class="summary_desc"><div class='inline'>
<p>Test if a string can be matched.</p>
<span class="summary_desc"><div class='inline'><p>Test if a string can be matched.</p>
</div></span>
</li>
@ -216,8 +213,7 @@
<span class="summary_desc"><div class='inline'>
<p>Checks if pattern object is static (is a simple String pattern).</p>
<span class="summary_desc"><div class='inline'><p>Checks if pattern object is static (is a simple String pattern).</p>
</div></span>
</li>
@ -240,8 +236,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Pattern.</p>
<p>Returns a new instance of Pattern.</p>
</div>
@ -260,8 +255,7 @@
&mdash;
<div class='inline'>
<p>object to generate pattern from</p>
<div class='inline'><p>object to generate pattern from</p>
</div>
</li>
@ -310,15 +304,14 @@
</h3><div class="docstring">
<div class="discussion">
<p>Match the string and assign matches to parameters. Returns:</p>
<ul><li>
<p>Unmatched part of a string</p>
</li><li>
<p>Unnamed parameters</p>
</li><li>
<p>Named parameters</p>
</li></ul>
<p>Match the string and assign matches to parameters.
Returns:</p>
<ul>
<li>Unmatched part of a string</li>
<li>Unnamed parameters</li>
<li>Named parameters</li>
</ul>
</div>
@ -337,8 +330,7 @@
&mdash;
<div class='inline'>
<p>String to match</p>
<div class='inline'><p>String to match</p>
</div>
</li>
@ -365,8 +357,7 @@
&mdash;
<div class='inline'>
<p>if input doesn’t match pattern</p>
<div class='inline'><p>if input doesn&#39;t match pattern</p>
</div>
</li>
@ -423,8 +414,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Test if a string can be matched. Lighter version of match that doesn’t assign any variables.</p>
<p>Test if a string can be matched.
Lighter version of match that doesn&#39;t assign any variables.</p>
</div>
@ -443,8 +434,7 @@
&mdash;
<div class='inline'>
<p>String to match</p>
<div class='inline'><p>String to match</p>
</div>
</li>
@ -505,8 +495,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Checks if pattern object is static (is a simple String pattern).</p>
<p>Checks if pattern object is static (is a simple String pattern).</p>
</div>
@ -553,7 +542,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

13
doc/Hyde/PatternMatching.html

@ -87,8 +87,8 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Utility functions and pattern-generator classes. Used primarily to create patterns for path definitions.</p>
<p>Utility functions and pattern-generator classes.
Used primarily to create patterns for path definitions.</p>
</div>
@ -138,8 +138,7 @@
<span class="summary_desc"><div class='inline'>
<p>Strips extra slashes from a string.</p>
<span class="summary_desc"><div class='inline'><p>Strips extra slashes from a string.</p>
</div></span>
</li>
@ -165,8 +164,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Strips extra slashes from a string. (including slashes at the start and end of the string)</p>
<p>Strips extra slashes from a string.
(including slashes at the start and end of the string)</p>
</div>
@ -232,7 +231,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

155
doc/Hyde/PatternMatching/Glob.html

@ -101,63 +101,72 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Implements glob-like pattern matching. Exact specifications for globbing rules:</p>
<p>Implements glob-like pattern matching.
Exact specifications for globbing rules:</p>
<p>“/”</p>
<p>&quot;/&quot;</p>
<pre class="code ruby"><code class="ruby">- act as directory separators
- multiple slashes (i.e. &quot;///&quot;) are the same as one slash (&quot;/&quot;)
- slashes are stripped at start and end of an expression or path
- slashes are not matched by anything but the globstar (&quot;**&quot;)
</code></pre>
<ul>
<li>act as directory separators</li>
<li>multiple slashes (i.e. &quot;///&quot;) are the same as one slash (&quot;/&quot;)</li>
<li>slashes are stripped at start and end of an expression or path</li>
<li>slashes are not matched by anything but the globstar (&quot;**&quot;)</li>
</ul>
<p>“*” ( regexp: /([^/]*)/ )</p>
<p>&quot;<em>&quot; ( regexp: /([^/]</em>)/ )</p>
<pre class="code ruby"><code class="ruby">- matches from 0 to any number of characters
- does not match nothing if placed between two slashes (i.e &quot;/*/&quot;)
- result is captured in an array
- stops at slashes
- greedy (matches as much as possible)
</code></pre>
<ul>
<li>matches from 0 to any number of characters</li>
<li>does not match nothing if placed between two slashes (i.e &quot;/*/&quot;)</li>
<li>result is captured in an array</li>
<li>stops at slashes</li>
<li>greedy (matches as much as possible)</li>
</ul>
<p>“**” ( regexp: /(.*)/ )</p>
<p>&quot;*<em>&quot; ( regexp: /(.</em>)/ )</p>
<pre class="code ruby"><code class="ruby">- matches any number of characters
- matches slashes (&quot;/&quot;)
- result is captured in an array
- does not stop at slashes
- greedy (matches as much as possible)
</code></pre>
<ul>
<li>matches any number of characters</li>
<li>matches slashes (&quot;/&quot;)</li>
<li>result is captured in an array</li>
<li>does not stop at slashes</li>
<li>greedy (matches as much as possible)</li>
</ul>
<p>“[…]+” ( regexp: itself, ! and ^ at the start are interchangeable )</p>
<p>&quot;[...]+&quot; ( regexp: itself, ! and ^ at the start are interchangeable )</p>
<pre class="code ruby"><code class="ruby">- acts like a regexp range
- matches any characters, including slashes if specified
- matches any number of characters
- valid ways to specify a range: [A-z], [a-z], [9-z] (ascii order)
- ! or ^ at the start invert meaning (any character not in range)
- result is captured in an array
</code></pre>
<ul>
<li>acts like a regexp range</li>
<li>matches any characters, including slashes if specified</li>
<li>matches any number of characters</li>
<li>valid ways to specify a range: [A-z], [a-z], <a href="ascii%20order">9-z</a></li>
<li>! or ^ at the start invert meaning (any character not in range)</li>
<li>result is captured in an array</li>
</ul>
<p>&quot;:name&quot; ( regexp: acts like a named group for /[^/]*/ )</p>
<p>“:name” ( regexp: acts like a named group for /[^/]*/ )</p>
<ul>
<li>acts like * as defined above</li>
<li>result is captured in a hash with &quot;name&quot; as key</li>
<li>name allows alphanumeric characters and underscores</li>
<li>ignored unless placed between two slashes</li>
</ul>
<pre class="code ruby"><code class="ruby">- acts like * as defined above
- result is captured in a hash with &quot;name&quot; as key
- name allows alphanumeric characters and underscores
- ignored unless placed between two slashes
</code></pre>
<p>&quot;(name|name2|...)&quot; ( regexp: itself )</p>
<p>“(name|name2|…)” ( regexp: itself )</p>
<ul>
<li>matches any of (full keywords) name, name2, ...</li>
<li>result is captured in an array</li>
<li>each name may include only these groups of characters:
<pre class="code ruby"><code class="ruby">- matches any of (full keywords) name, name2, ...
- result is captured in an array
- each name may include only these groups of characters:
- alphanumeric
- slashes
- underscores
- dashes
</code></pre>
<ul>
<li>alphanumeric</li>
<li>slashes</li>
<li>underscores</li>
<li>dashes</li>
</ul></li>
</ul>
</div>
@ -197,8 +206,7 @@
<span class="summary_desc"><div class='inline'>
<p>Test if input is convertible to a Glob and if it should be converted.</p>
<span class="summary_desc"><div class='inline'><p>Test if input is convertible to a Glob and if it should be converted.</p>
</div></span>
</li>
@ -232,8 +240,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Glob.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Glob.</p>
</div></span>
</li>
@ -256,8 +263,7 @@
<span class="summary_desc"><div class='inline'>
<p>Match the string and assign matches to parameters.</p>
<span class="summary_desc"><div class='inline'><p>Match the string and assign matches to parameters.</p>
</div></span>
</li>
@ -280,8 +286,7 @@
<span class="summary_desc"><div class='inline'>
<p>Test if a string can be matched.</p>
<span class="summary_desc"><div class='inline'><p>Test if a string can be matched.</p>
</div></span>
</li>
@ -304,8 +309,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Glob.</p>
<p>Returns a new instance of Glob.</p>
</div>
@ -324,8 +328,7 @@
&mdash;
<div class='inline'>
<p>Glob pattern</p>
<div class='inline'><p>Glob pattern</p>
</div>
</li>
@ -382,8 +385,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Test if input is convertible to a Glob and if it should be converted</p>
<p>Test if input is convertible to a Glob and if it should be converted</p>
</div>
@ -416,8 +418,7 @@
&mdash;
<div class='inline'>
<p>Input can be safely converted to Glob</p>
<div class='inline'><p>Input can be safely converted to Glob</p>
</div>
</li>
@ -464,15 +465,14 @@
</h3><div class="docstring">
<div class="discussion">
<p>Match the string and assign matches to parameters. Returns:</p>
<ul><li>
<p>Unmatched part of a string</p>
</li><li>
<p>Unnamed parameters</p>
</li><li>
<p>Named parameters</p>
</li></ul>
<p>Match the string and assign matches to parameters.
Returns:</p>
<ul>
<li>Unmatched part of a string</li>
<li>Unnamed parameters</li>
<li>Named parameters</li>
</ul>
</div>
@ -491,8 +491,7 @@
&mdash;
<div class='inline'>
<p>String to match</p>
<div class='inline'><p>String to match</p>
</div>
</li>
@ -519,8 +518,7 @@
&mdash;
<div class='inline'>
<p>if input doesn’t match glob</p>
<div class='inline'><p>if input doesn&#39;t match glob</p>
</div>
</li>
@ -571,8 +569,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Test if a string can be matched. Lighter version of match that doesn’t assign any variables.</p>
<p>Test if a string can be matched.
Lighter version of match that doesn&#39;t assign any variables.</p>
</div>
@ -591,8 +589,7 @@
&mdash;
<div class='inline'>
<p>String to match</p>
<div class='inline'><p>String to match</p>
</div>
</li>
@ -641,7 +638,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

68
doc/Hyde/PatternMatching/ReMatch.html

@ -104,18 +104,17 @@
<div class="note notetag">
<strong>Note:</strong>
<div class='inline'>
<p>If you are planning to write your own pattern, this is the easiest one to read.</p>
<div class='inline'><p>If you are planning to write your own pattern, this is the easiest one to read.</p>
</div>
</div>
<p>Regexp pattern matching wrapper.
Following principles apply to the wrapper:</p>
<p>Regexp pattern matching wrapper. Following principles apply to the wrapper:</p>
<ul><li>
<p>Regexp input is canonicalized using Hyde::PatternMatching.canonicalize</p>
</li><li>
<p>Matched content and anything before it is consumed in #match output</p>
</li></ul>
<ul>
<li>Regexp input is canonicalized using Hyde::PatternMatching.canonicalize</li>
<li>Matched content and anything before it is consumed in #match output</li>
</ul>
</div>
@ -155,8 +154,7 @@
<span class="summary_desc"><div class='inline'>
<p>Test if input is convertible and if it should be converted.</p>
<span class="summary_desc"><div class='inline'><p>Test if input is convertible and if it should be converted.</p>
</div></span>
</li>
@ -190,8 +188,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of ReMatch.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of ReMatch.</p>
</div></span>
</li>
@ -214,8 +211,7 @@
<span class="summary_desc"><div class='inline'>
<p>Match the string and assign matches to parameters.</p>
<span class="summary_desc"><div class='inline'><p>Match the string and assign matches to parameters.</p>
</div></span>
</li>
@ -238,8 +234,7 @@
<span class="summary_desc"><div class='inline'>
<p>Test if a string can be matched.</p>
<span class="summary_desc"><div class='inline'><p>Test if a string can be matched.</p>
</div></span>
</li>
@ -262,8 +257,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of ReMatch.</p>
<p>Returns a new instance of ReMatch.</p>
</div>
@ -310,8 +304,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Test if input is convertible and if it should be converted.</p>
<p>Test if input is convertible and if it should be converted.</p>
</div>
@ -344,8 +337,7 @@
&mdash;
<div class='inline'>
<p>Input can be safely converted to Glob</p>
<div class='inline'><p>Input can be safely converted to Glob</p>
</div>
</li>
@ -390,15 +382,14 @@
</h3><div class="docstring">
<div class="discussion">
<p>Match the string and assign matches to parameters. Returns:</p>
<ul><li>
<p>Unmatched part of a string</p>
</li><li>
<p>Unnamed parameters</p>
</li><li>
<p>Named parameters</p>
</li></ul>
<p>Match the string and assign matches to parameters.
Returns:</p>
<ul>
<li>Unmatched part of a string</li>
<li>Unnamed parameters</li>
<li>Named parameters</li>
</ul>
</div>
@ -417,8 +408,7 @@
&mdash;
<div class='inline'>
<p>String to match</p>
<div class='inline'><p>String to match</p>
</div>
</li>
@ -445,8 +435,7 @@
&mdash;
<div class='inline'>
<p>if input doesn’t match regexp</p>
<div class='inline'><p>if input doesn&#39;t match regexp</p>
</div>
</li>
@ -491,8 +480,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Test if a string can be matched. Lighter version of match that doesn’t assign any variables.</p>
<p>Test if a string can be matched.
Lighter version of match that doesn&#39;t assign any variables.</p>
</div>
@ -511,8 +500,7 @@
&mdash;
<div class='inline'>
<p>String to match</p>
<div class='inline'><p>String to match</p>
</div>
</li>
@ -559,7 +547,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 02:08:05 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

64
doc/Hyde/Probe.html

@ -103,8 +103,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Test probe. Also base for all “reactive” nodes.</p>
<p>Test probe. Also base for all &quot;reactive&quot; nodes.</p>
</div>
@ -114,7 +113,7 @@
</div><div id="subclasses">
<h2>Direct Known Subclasses</h2>
<p class="children"><span class='object_link'><a href="Handler.html" title="Hyde::Handler (class)">Handler</a></span>, <span class='object_link'><a href="ServeHandler.html" title="Hyde::ServeHandler (class)">ServeHandler</a></span></p>
<p class="children"><span class='object_link'><a href="Handlers/Handler.html" title="Hyde::Handlers::Handler (class)">Handlers::Handler</a></span>, <span class='object_link'><a href="Handlers/Serve.html" title="Hyde::Handlers::Serve (class)">Handlers::Serve</a></span></p>
</div>
@ -145,8 +144,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute properties.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute properties.</p>
</div></span>
</li>
@ -189,8 +187,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Probe.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Probe.</p>
</div></span>
</li>
@ -213,8 +210,7 @@
<span class="summary_desc"><div class='inline'>
<p>Method callback on successful request navigation.</p>
<span class="summary_desc"><div class='inline'><p>Method callback on successful request navigation.</p>
</div></span>
</li>
@ -248,8 +244,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Probe.</p>
<p>Returns a new instance of Probe.</p>
</div>
@ -289,12 +284,12 @@
<pre class="lines">
23
24
25</pre>
41
42
43</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 23</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 41</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
@ -322,8 +317,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute properties.</p>
<p>Returns the value of attribute properties.</p>
</div>
@ -337,12 +331,12 @@
<pre class="lines">
27
28
29</pre>
45
46
47</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 27</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 45</span>
<span class='kw'>def</span> <span class='id identifier rubyid_properties'>properties</span>
<span class='ivar'>@properties</span>
@ -370,8 +364,9 @@
</h3><div class="docstring">
<div class="discussion">
<p>Method callback on successful request navigation. Throws an error upon reaching the path. This behaviour should only be used internally.</p>
<p>Method callback on successful request navigation.
Throws an error upon reaching the path.
This behaviour should only be used internally.</p>
</div>
@ -404,8 +399,7 @@
&mdash;
<div class='inline'>
<p>true if further navigation is possible</p>
<div class='inline'><p>true if further navigation is possible</p>
</div>
</li>
@ -431,17 +425,17 @@
<pre class="lines">
35
36
37
38
39
40
41
42</pre>
53
54
55
56
57
58
59
60</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 35</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 53</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='kw'>return</span> <span class='id identifier rubyid_reject'>reject</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/?$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span>
@ -461,7 +455,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

249
doc/Hyde/ProbeContext.html

@ -0,0 +1,249 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::ProbeContext
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::ProbeContext";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">ProbeContext</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::ProbeContext
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Hyde::ProbeContext</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Includes:</dt>
<dd><span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">DSL::CommonMethods</a></span>, <span class='object_link'><a href="DSL/ProbeConstructors.html" title="Hyde::DSL::ProbeConstructors (module)">DSL::ProbeConstructors</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html" title="Hyde::DSL::ProbeMethods (module)">DSL::ProbeMethods</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/probe.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Context that provides execution context for Probes.</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(origin) &#x21d2; ProbeContext </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of ProbeContext.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">DSL::CommonMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/CommonMethods.html#bounce-instance_method" title="Hyde::DSL::CommonMethods#bounce (method)">#bounce</a></span>, <span class='object_link'><a href="DSL/CommonMethods.html#die-instance_method" title="Hyde::DSL::CommonMethods#die (method)">#die</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/ProbeMethods.html" title="Hyde::DSL::ProbeMethods (module)">DSL::ProbeMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/ProbeMethods.html#file-instance_method" title="Hyde::DSL::ProbeMethods#file (method)">#file</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#form-instance_method" title="Hyde::DSL::ProbeMethods#form (method)">#form</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#form%3F-instance_method" title="Hyde::DSL::ProbeMethods#form? (method)">#form?</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#header-instance_method" title="Hyde::DSL::ProbeMethods#header (method)">#header</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#remove_header-instance_method" title="Hyde::DSL::ProbeMethods#remove_header (method)">#remove_header</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#request-instance_method" title="Hyde::DSL::ProbeMethods#request (method)">#request</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#status-instance_method" title="Hyde::DSL::ProbeMethods#status (method)">#status</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/ProbeConstructors.html" title="Hyde::DSL::ProbeConstructors (module)">DSL::ProbeConstructors</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/ProbeConstructors.html#erb-instance_method" title="Hyde::DSL::ProbeConstructors#erb (method)">#erb</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(origin) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::ProbeContext (class)">ProbeContext</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of ProbeContext.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
32
33
34</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe.rb', line 32</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_origin'>origin</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span> <span class='op'>=</span> <span class='id identifier rubyid_origin'>origin</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

227
doc/Hyde/ProcessorContext.html

@ -0,0 +1,227 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::ProcessorContext
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::ProcessorContext";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">ProcessorContext</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::ProcessorContext
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Hyde::ProcessorContext</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Includes:</dt>
<dd><span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">DSL::CommonMethods</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/path.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Execution context for filters and preprocessors.</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(path) &#x21d2; ProcessorContext </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of ProcessorContext.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">DSL::CommonMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/CommonMethods.html#bounce-instance_method" title="Hyde::DSL::CommonMethods#bounce (method)">#bounce</a></span>, <span class='object_link'><a href="DSL/CommonMethods.html#die-instance_method" title="Hyde::DSL::CommonMethods#die (method)">#die</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(path) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::ProcessorContext (class)">ProcessorContext</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of ProcessorContext.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
15
16
17</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/path.rb', line 15</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span> <span class='op'>=</span> <span class='id identifier rubyid_path'>path</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:02 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

317
doc/Hyde/Request.html

@ -101,8 +101,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Request wrapper for Rack protocol</p>
<p>Request wrapper for Rack protocol</p>
</div>
@ -137,8 +136,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute filepath.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute filepath.</p>
</div></span>
</li>
@ -166,8 +164,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute headers.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute headers.</p>
</div></span>
</li>
@ -195,8 +192,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute param.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute param.</p>
</div></span>
</li>
@ -222,8 +218,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute path.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute path.</p>
</div></span>
</li>
@ -251,8 +246,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute path_info.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute path_info.</p>
</div></span>
</li>
@ -280,8 +274,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute postprocessors.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute postprocessors.</p>
</div></span>
</li>
@ -309,8 +302,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute query.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute query.</p>
</div></span>
</li>
@ -338,8 +330,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute request_method.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute request_method.</p>
</div></span>
</li>
@ -367,8 +358,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute script_name.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute script_name.</p>
</div></span>
</li>
@ -396,8 +386,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute server_name.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute server_name.</p>
</div></span>
</li>
@ -425,8 +414,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute server_port.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute server_port.</p>
</div></span>
</li>
@ -454,8 +442,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute server_protocol.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute server_protocol.</p>
</div></span>
</li>
@ -483,8 +470,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute splat.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute splat.</p>
</div></span>
</li>
@ -520,8 +506,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns request body (if POST data exists).</p>
<span class="summary_desc"><div class='inline'><p>Returns request body (if POST data exists).</p>
</div></span>
</li>
@ -546,8 +531,30 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Request.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Request.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#input-instance_method" title="#input (instance method)">#<strong>input</strong> &#x21d2; IO </a>
</span>
<span class="summary_desc"><div class='inline'><p>Returns raw Rack input object.</p>
</div></span>
</li>
@ -570,8 +577,7 @@
<span class="summary_desc"><div class='inline'>
<p>Load last navigation state (path, splat, param) from state stack.</p>
<span class="summary_desc"><div class='inline'><p>Load last navigation state (path, splat, param) from state stack.</p>
</div></span>
</li>
@ -594,8 +600,7 @@
<span class="summary_desc"><div class='inline'>
<p>Push current navigation state (path, splat, param) onto state stack.</p>
<span class="summary_desc"><div class='inline'><p>Push current navigation state (path, splat, param) onto state stack.</p>
</div></span>
</li>
@ -618,8 +623,7 @@
<span class="summary_desc"><div class='inline'>
<p>Run postprocessors.</p>
<span class="summary_desc"><div class='inline'><p>Run postprocessors.</p>
</div></span>
</li>
@ -642,8 +646,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Request.</p>
<p>Returns a new instance of Request.</p>
</div>
@ -703,7 +706,7 @@
<span class='comment'># Rack environment variable bindings. Should be public and frozen.
</span> <span class='id identifier rubyid_init_request_params'>init_request_params</span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='rparen'>)</span>
<span class='comment'># Query parsing
</span> <span class='ivar'>@query</span> <span class='op'>=</span> <span class='const'>Query</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@query_string</span><span class='rparen'>)</span>
</span> <span class='ivar'>@query</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Util.html" title="Hyde::Util (module)">Util</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Util/Query.html" title="Hyde::Util::Query (class)">Query</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Util/Query.html#initialize-instance_method" title="Hyde::Util::Query#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='ivar'>@query_string</span><span class='rparen'>)</span>
<span class='comment'># Pattern matching parameters. Public, readable, unfrozen.
</span> <span class='ivar'>@param</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
<span class='ivar'>@splat</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
@ -741,8 +744,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute filepath.</p>
<p>Returns the value of attribute filepath.</p>
</div>
@ -756,12 +758,12 @@
<pre class="lines">
59
60
61</pre>
65
66
67</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 59</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 65</span>
<span class='kw'>def</span> <span class='id identifier rubyid_filepath'>filepath</span>
<span class='ivar'>@filepath</span>
@ -784,8 +786,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute headers.</p>
<p>Returns the value of attribute headers.</p>
</div>
@ -799,12 +800,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_headers'>headers</span>
<span class='ivar'>@headers</span>
@ -827,8 +828,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute param.</p>
<p>Returns the value of attribute param.</p>
</div>
@ -842,12 +842,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_param'>param</span>
<span class='ivar'>@param</span>
@ -870,8 +870,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute path.</p>
<p>Returns the value of attribute path.</p>
</div>
@ -885,12 +884,12 @@
<pre class="lines">
59
60
61</pre>
65
66
67</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 59</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 65</span>
<span class='kw'>def</span> <span class='id identifier rubyid_path'>path</span>
<span class='ivar'>@path</span>
@ -913,8 +912,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute path_info.</p>
<p>Returns the value of attribute path_info.</p>
</div>
@ -928,12 +926,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_path_info'>path_info</span>
<span class='ivar'>@path_info</span>
@ -956,8 +954,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute postprocessors.</p>
<p>Returns the value of attribute postprocessors.</p>
</div>
@ -971,12 +968,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_postprocessors'>postprocessors</span>
<span class='ivar'>@postprocessors</span>
@ -999,8 +996,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute query.</p>
<p>Returns the value of attribute query.</p>
</div>
@ -1014,12 +1010,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_query'>query</span>
<span class='ivar'>@query</span>
@ -1042,8 +1038,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute request_method.</p>
<p>Returns the value of attribute request_method.</p>
</div>
@ -1057,12 +1052,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_request_method'>request_method</span>
<span class='ivar'>@request_method</span>
@ -1085,8 +1080,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute script_name.</p>
<p>Returns the value of attribute script_name.</p>
</div>
@ -1100,12 +1094,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_script_name'>script_name</span>
<span class='ivar'>@script_name</span>
@ -1128,8 +1122,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute server_name.</p>
<p>Returns the value of attribute server_name.</p>
</div>
@ -1143,12 +1136,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_server_name'>server_name</span>
<span class='ivar'>@server_name</span>
@ -1171,8 +1164,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute server_port.</p>
<p>Returns the value of attribute server_port.</p>
</div>
@ -1186,12 +1178,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_server_port'>server_port</span>
<span class='ivar'>@server_port</span>
@ -1214,8 +1206,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute server_protocol.</p>
<p>Returns the value of attribute server_protocol.</p>
</div>
@ -1229,12 +1220,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_server_protocol'>server_protocol</span>
<span class='ivar'>@server_protocol</span>
@ -1257,8 +1248,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute splat.</p>
<p>Returns the value of attribute splat.</p>
</div>
@ -1272,12 +1262,12 @@
<pre class="lines">
56
57
58</pre>
62
63
64</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 56</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_splat'>splat</span>
<span class='ivar'>@splat</span>
@ -1305,8 +1295,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns request body (if POST data exists)</p>
<p>Returns request body (if POST data exists)</p>
</div>
@ -1341,7 +1330,64 @@
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 42</span>
<span class='kw'>def</span> <span class='id identifier rubyid_body'>body</span>
<span class='ivar'>@body</span> <span class='op'>||=</span> <span class='ivar'>@rack</span><span class='period'>.</span><span class='id identifier rubyid_input'>input</span><span class='op'>&amp;.</span><span class='id identifier rubyid_gets'>gets</span>
<span class='ivar'>@body</span> <span class='op'>||=</span> <span class='ivar'>@rack</span><span class='period'>.</span><span class='id identifier rubyid_input'>input</span><span class='op'>&amp;.</span><span class='id identifier rubyid_read'>read</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="input-instance_method">
#<strong>input</strong> &#x21d2; <tt>IO</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns raw Rack input object</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>IO</tt>)</span>
&mdash;
<div class='inline'><p>(May not entirely be compatible with IO, see Rack/SPEC.rdoc)</p>
</div>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
48
49
50</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 48</span>
<span class='kw'>def</span> <span class='id identifier rubyid_input'>input</span>
<span class='ivar'>@rack</span><span class='period'>.</span><span class='id identifier rubyid_input'>input</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -1359,8 +1405,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Load last navigation state (path, splat, param) from state stack</p>
<p>Load last navigation state (path, splat, param) from state stack</p>
</div>
@ -1374,12 +1419,12 @@
<pre class="lines">
52
53
54</pre>
58
59
60</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 52</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 58</span>
<span class='kw'>def</span> <span class='id identifier rubyid_pop_state'>pop_state</span>
<span class='ivar'>@path</span><span class='comma'>,</span> <span class='ivar'>@param</span><span class='comma'>,</span> <span class='ivar'>@splat</span><span class='comma'>,</span> <span class='ivar'>@filepath</span> <span class='op'>=</span> <span class='ivar'>@states</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span>
@ -1400,8 +1445,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Push current navigation state (path, splat, param) onto state stack</p>
<p>Push current navigation state (path, splat, param) onto state stack</p>
</div>
@ -1415,12 +1459,12 @@
<pre class="lines">
47
48
49</pre>
53
54
55</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 47</span>
<pre class="code"><span class="info file"># File 'lib/hyde/request.rb', line 53</span>
<span class='kw'>def</span> <span class='id identifier rubyid_push_state'>push_state</span>
<span class='ivar'>@states</span><span class='period'>.</span><span class='id identifier rubyid_push'>push</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='ivar'>@path</span><span class='comma'>,</span> <span class='ivar'>@param</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='comma'>,</span> <span class='ivar'>@splat</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='comma'>,</span> <span class='ivar'>@filepath</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='rbracket'>]</span><span class='rparen'>)</span>
@ -1441,8 +1485,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Run postprocessors</p>
<p>Run postprocessors</p>
</div>
@ -1495,7 +1538,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

87
doc/Hyde/Response.html

@ -101,8 +101,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Rack protocol response wrapper.</p>
<p>Rack protocol response wrapper.</p>
</div>
@ -137,8 +136,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute body.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute body.</p>
</div></span>
</li>
@ -164,8 +162,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute chunk_size.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute chunk_size.</p>
</div></span>
</li>
@ -191,8 +188,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute headers.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute headers.</p>
</div></span>
</li>
@ -218,8 +214,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute status.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute status.</p>
</div></span>
</li>
@ -255,8 +250,7 @@
<span class="summary_desc"><div class='inline'>
<p>Turn body into array of chunks.</p>
<span class="summary_desc"><div class='inline'><p>Turn body into array of chunks.</p>
</div></span>
</li>
@ -279,8 +273,7 @@
<span class="summary_desc"><div class='inline'>
<p>Ensure response correctness.</p>
<span class="summary_desc"><div class='inline'><p>Ensure response correctness.</p>
</div></span>
</li>
@ -312,8 +305,7 @@
<span class="summary_desc"><div class='inline'>
<p>Add a header to the headers hash.</p>
<span class="summary_desc"><div class='inline'><p>Add a header to the headers hash.</p>
</div></span>
</li>
@ -336,8 +328,7 @@
<span class="summary_desc"><div class='inline'>
<p>Delete a header value from the headers hash If no value is provided, deletes all key entries.</p>
<span class="summary_desc"><div class='inline'><p>Delete a header value from the headers hash If no value is provided, deletes all key entries.</p>
</div></span>
</li>
@ -360,8 +351,7 @@
<span class="summary_desc"><div class='inline'>
<p>Return internal representation of Rack response.</p>
<span class="summary_desc"><div class='inline'><p>Return internal representation of Rack response.</p>
</div></span>
</li>
@ -386,8 +376,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Response.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Response.</p>
</div></span>
</li>
@ -410,8 +399,7 @@
<span class="summary_desc"><div class='inline'>
<p>Make internal representation conformant.</p>
<span class="summary_desc"><div class='inline'><p>Make internal representation conformant.</p>
</div></span>
</li>
@ -434,8 +422,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Response.</p>
<p>Returns a new instance of Response.</p>
</div>
@ -515,8 +502,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute body.</p>
<p>Returns the value of attribute body.</p>
</div>
@ -558,8 +544,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute chunk_size.</p>
<p>Returns the value of attribute chunk_size.</p>
</div>
@ -601,8 +586,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute headers.</p>
<p>Returns the value of attribute headers.</p>
</div>
@ -644,8 +628,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute status.</p>
<p>Returns the value of attribute status.</p>
</div>
@ -692,8 +675,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Turn body into array of chunks</p>
<p>Turn body into array of chunks</p>
</div>
@ -761,8 +743,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Ensure response correctness</p>
<p>Ensure response correctness</p>
</div>
@ -795,8 +776,7 @@
<div class='inline'>
<p>Response</p>
<div class='inline'><p>Response</p>
</div>
</li>
@ -867,8 +847,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Add a header to the headers hash</p>
<p>Add a header to the headers hash</p>
</div>
@ -887,8 +866,7 @@
&mdash;
<div class='inline'>
<p>header name</p>
<div class='inline'><p>header name</p>
</div>
</li>
@ -903,8 +881,7 @@
&mdash;
<div class='inline'>
<p>header value</p>
<div class='inline'><p>header value</p>
</div>
</li>
@ -956,8 +933,8 @@
</h3><div class="docstring">
<div class="discussion">
<p>Delete a header value from the headers hash If no value is provided, deletes all key entries</p>
<p>Delete a header value from the headers hash
If no value is provided, deletes all key entries</p>
</div>
@ -976,8 +953,7 @@
&mdash;
<div class='inline'>
<p>header name</p>
<div class='inline'><p>header name</p>
</div>
</li>
@ -994,8 +970,7 @@
&mdash;
<div class='inline'>
<p>header value</p>
<div class='inline'><p>header value</p>
</div>
</li>
@ -1043,8 +1018,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Return internal representation of Rack response</p>
<p>Return internal representation of Rack response</p>
</div>
@ -1097,8 +1071,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Make internal representation conformant</p>
<p>Make internal representation conformant</p>
</div>
@ -1167,7 +1140,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

20
doc/Hyde/ServeHandler.html

@ -307,12 +307,12 @@
<pre class="lines">
11
12
13
14</pre>
13</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 12</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 11</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
@ -355,12 +355,12 @@
<pre class="lines">
15
16
17
18</pre>
17</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 16</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 15</span>
<span class='kw'>def</span> <span class='id identifier rubyid_response'>response</span>
<span class='ivar'>@response</span>
@ -436,17 +436,17 @@
<pre class="lines">
21
22
23
24
25
26
27
28
29</pre>
28</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 22</span>
<pre class="code"><span class="info file"># File 'lib/hyde/probe/serve_handler.rb', line 21</span>
<span class='kw'>def</span> <span class='id identifier rubyid_process'>process</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
<span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_expand_path'>expand_path</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_filepath'>filepath</span><span class='rparen'>)</span>
@ -466,7 +466,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

47
doc/Hyde/Server.html

@ -105,8 +105,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>A specialized path that can be used directly as a Rack application.</p>
<p>A specialized path that can be used directly as a Rack application.</p>
</div>
@ -123,16 +122,22 @@
<dl class="constants">
<dt id="Binding-constant" class="">Binding =
<dt id="Context-constant" class="">Context =
</dt>
<dd><pre class="code"><span class='const'><span class='object_link'><a href="ServerBinding.html" title="Hyde::ServerBinding (class)">ServerBinding</a></span></span></pre></dd>
<dd><pre class="code"><span class='const'><span class='object_link'><a href="ServerContext.html" title="Hyde::ServerContext (class)">ServerContext</a></span></span></pre></dd>
</dl>
<h3 class="inherited">Constants inherited
from <span class='object_link'><a href="Path.html" title="Hyde::Path (class)">Path</a></span></h3>
<p class="inherited"><span class='object_link'><a href="Path.html#ProcContext-constant" title="Hyde::Path::ProcContext (constant)">Path::ProcContext</a></span></p>
@ -172,8 +177,7 @@
<span class="summary_desc"><div class='inline'>
<p>Rack ingress point.</p>
<span class="summary_desc"><div class='inline'><p>Rack ingress point.</p>
</div></span>
</li>
@ -198,8 +202,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Server.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Server.</p>
</div></span>
</li>
@ -244,8 +247,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Server.</p>
<p>Returns a new instance of Server.</p>
</div>
@ -266,8 +268,7 @@
&mdash;
<div class='inline'>
<p>Parent object to inherit properties to</p>
<div class='inline'><p>Parent object to inherit properties to</p>
</div>
</li>
@ -282,8 +283,7 @@
&mdash;
<div class='inline'>
<p>Setup block</p>
<div class='inline'><p>Setup block</p>
</div>
</li>
@ -297,6 +297,7 @@
<pre class="lines">
17
18
19
20
@ -312,11 +313,10 @@
30
31
32
33
34</pre>
33</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/server.rb', line 18</span>
<pre class="code"><span class="info file"># File 'lib/hyde/server.rb', line 17</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>parent:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>parent:</span> <span class='id identifier rubyid_parent'>parent</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_setup'>setup</span><span class='rparen'>)</span>
@ -358,8 +358,9 @@
</h3><div class="docstring">
<div class="discussion">
<p>Rack ingress point. This should not be called under any circumstances twice in the same application, although server nesting for the purpose of creating virtual hosts is allowed.</p>
<p>Rack ingress point.
This should not be called under any circumstances twice in the same application,
although server nesting for the purpose of creating virtual hosts is allowed.</p>
</div>
@ -401,17 +402,17 @@
<pre class="lines">
40
41
42
43
44
45
46
47
48</pre>
47</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/server.rb', line 41</span>
<pre class="code"><span class="info file"># File 'lib/hyde/server.rb', line 40</span>
<span class='kw'>def</span> <span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='rparen'>)</span>
<span class='id identifier rubyid_request'>request</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Request.html" title="Hyde::Request (class)">Request</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Request.html#initialize-instance_method" title="Hyde::Request#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_env'>env</span><span class='rparen'>)</span>
@ -431,7 +432,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

162
doc/Hyde/ServerContext.html

@ -0,0 +1,162 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::ServerContext
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::ServerContext";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (S)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">ServerContext</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::ServerContext
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span></li>
<li class="next">Hyde::ServerContext</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/server.rb</dd>
</dl>
</div>
<h2>Method Summary</h2>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span></h3>
<p class="inherited"><span class='object_link'><a href="PathContext.html#initialize-instance_method" title="Hyde::PathContext#initialize (method)">#initialize</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/PathMethods.html" title="Hyde::DSL::PathMethods (module)">DSL::PathMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/PathMethods.html#filter-instance_method" title="Hyde::DSL::PathMethods#filter (method)">#filter</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#index-instance_method" title="Hyde::DSL::PathMethods#index (method)">#index</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#postprocess-instance_method" title="Hyde::DSL::PathMethods#postprocess (method)">#postprocess</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#preprocess-instance_method" title="Hyde::DSL::PathMethods#preprocess (method)">#preprocess</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#remap-instance_method" title="Hyde::DSL::PathMethods#remap (method)">#remap</a></span>, <span class='object_link'><a href="DSL/PathMethods.html#root-instance_method" title="Hyde::DSL::PathMethods#root (method)">#root</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/PathConstructors.html" title="Hyde::DSL::PathConstructors (module)">DSL::PathConstructors</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/PathConstructors.html#connect-instance_method" title="Hyde::DSL::PathConstructors#connect (method)">#connect</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#delete-instance_method" title="Hyde::DSL::PathConstructors#delete (method)">#delete</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#get-instance_method" title="Hyde::DSL::PathConstructors#get (method)">#get</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#head-instance_method" title="Hyde::DSL::PathConstructors#head (method)">#head</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#options-instance_method" title="Hyde::DSL::PathConstructors#options (method)">#options</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#patch-instance_method" title="Hyde::DSL::PathConstructors#patch (method)">#patch</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#path-instance_method" title="Hyde::DSL::PathConstructors#path (method)">#path</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#post-instance_method" title="Hyde::DSL::PathConstructors#post (method)">#post</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#probe-instance_method" title="Hyde::DSL::PathConstructors#probe (method)">#probe</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#put-instance_method" title="Hyde::DSL::PathConstructors#put (method)">#put</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#register-instance_method" title="Hyde::DSL::PathConstructors#register (method)">#register</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#serve-instance_method" title="Hyde::DSL::PathConstructors#serve (method)">#serve</a></span>, <span class='object_link'><a href="DSL/PathConstructors.html#trace-instance_method" title="Hyde::DSL::PathConstructors#trace (method)">#trace</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<p class="notice">This class inherits a constructor from <span class='object_link'><a href="PathContext.html#initialize-instance_method" title="Hyde::PathContext#initialize (method)">Hyde::PathContext</a></span></p>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

2
doc/Hyde/TRACEHandler.html

@ -211,7 +211,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:59 2023 by
Generated on Wed Sep 13 01:10:18 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

763
doc/Hyde/Template.html

@ -0,0 +1,763 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Template
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Template";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (T)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">Template</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Template
<span class="abstract note title">Abstract</span>
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Hyde::Template</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/template.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<div class="note abstract">
<strong>This class is abstract.</strong>
<div class='inline'><p>does not represent any actual template engine.</p>
</div>
</div>
<p>Interface for Template engines</p>
</div>
</div>
<div class="tags">
</div><div id="subclasses">
<h2>Direct Known Subclasses</h2>
<p class="children"><span class='object_link'><a href="Templates/ERB.html" title="Hyde::Templates::ERB (class)">Hyde::Templates::ERB</a></span></p>
</div>
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#binding-instance_method" title="#binding (instance method)">#<strong>binding</strong> &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute binding.</p>
</div></span>
</li>
</ul>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(input, toplevel: nil, locals: nil) &#x21d2; Template </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of Template.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#local_variable_get-instance_method" title="#local_variable_get (instance method)">#<strong>local_variable_get</strong>(key) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Get local variable.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#local_variable_set-instance_method" title="#local_variable_set (instance method)">#<strong>local_variable_set</strong>(key, value) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Set local variable.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#local_variables-instance_method" title="#local_variables (instance method)">#<strong>local_variables</strong> &#x21d2; Array(Symbol) </a>
</span>
<span class="summary_desc"><div class='inline'><p>Get an array of defined local variables.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#override_locals-instance_method" title="#override_locals (instance method)">#<strong>override_locals</strong>(vars) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Override binding variables.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#run-instance_method" title="#run (instance method)">#<strong>run</strong> &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Run the template.</p>
</div></span>
</li>
</ul>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(input, toplevel: nil, locals: nil) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::Template (class)">Template</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Template.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>input</span>
<span class='type'>(<tt>String</tt>, <tt>File</tt>)</span>
</li>
<li>
<span class='name'>context</span>
<span class='type'>(<tt>Binding</tt>, <tt>nil</tt>)</span>
</li>
<li>
<span class='name'>locals</span>
<span class='type'>(<tt>Hash</tt>, <tt>nil</tt>)</span>
<em class="default">(defaults to: <tt>nil</tt>)</em>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
30
31
32
33
34
35
36
37
38</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 30</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='label'>toplevel:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>locals:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
<span class='ivar'>@template</span> <span class='op'>=</span> <span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>File</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span> <span class='op'>:</span> <span class='id identifier rubyid_input'>input</span>
<span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_close'>close</span> <span class='kw'>if</span> <span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>File</span>
<span class='ivar'>@binding</span> <span class='op'>=</span> <span class='id identifier rubyid_toplevel'>toplevel</span> <span class='kw'>or</span> <span class='id identifier rubyid_binding'>binding</span>
<span class='id identifier rubyid_locals'>locals</span><span class='op'>&amp;.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
<span class='ivar'>@binding</span><span class='period'>.</span><span class='id identifier rubyid_local_variable_set'>local_variable_set</span><span class='lparen'>(</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
<span class='kw'>end</span>
<span class='ivar'>@context</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="TemplateContext.html" title="Hyde::TemplateContext (class)">TemplateContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="TemplateContext.html#initialize-instance_method" title="Hyde::TemplateContext#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_attr_details" class="attr_details">
<h2>Instance Attribute Details</h2>
<span id="binding=-instance_method"></span>
<div class="method_details first">
<h3 class="signature first" id="binding-instance_method">
#<strong>binding</strong> &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute binding.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
74
75
76</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 74</span>
<span class='kw'>def</span> <span class='id identifier rubyid_binding'>binding</span>
<span class='ivar'>@binding</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="local_variable_get-instance_method">
#<strong>local_variable_get</strong>(key) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Get local variable</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>key</span>
<span class='type'>(<tt>Symbol</tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Object</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
50
51
52</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 50</span>
<span class='kw'>def</span> <span class='id identifier rubyid_local_variable_get'>local_variable_get</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
<span class='ivar'>@binding</span><span class='period'>.</span><span class='id identifier rubyid_local_variable_get'>local_variable_get</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="local_variable_set-instance_method">
#<strong>local_variable_set</strong>(key, value) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Set local variable</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>key</span>
<span class='type'>(<tt>Symbol</tt>)</span>
</li>
<li>
<span class='name'>value</span>
<span class='type'>(<tt>Object</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
43
44
45</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 43</span>
<span class='kw'>def</span> <span class='id identifier rubyid_local_variable_set'>local_variable_set</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
<span class='ivar'>@binding</span><span class='period'>.</span><span class='id identifier rubyid_local_variable_set'>local_variable_set</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="local_variables-instance_method">
#<strong>local_variables</strong> &#x21d2; <tt>Array(Symbol)</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Get an array of defined local variables</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Array(Symbol)</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
56
57
58</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 56</span>
<span class='kw'>def</span> <span class='id identifier rubyid_local_variables'>local_variables</span>
<span class='ivar'>@binding</span><span class='period'>.</span><span class='id identifier rubyid_local_variables'>local_variables</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="override_locals-instance_method">
#<strong>override_locals</strong>(vars) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Override binding variables.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>vars</span>
<span class='type'>(<tt>Hash{Symbol =&gt; Object}</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
62
63
64
65
66</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 62</span>
<span class='kw'>def</span> <span class='id identifier rubyid_override_locals'>override_locals</span><span class='lparen'>(</span><span class='id identifier rubyid_vars'>vars</span><span class='rparen'>)</span>
<span class='id identifier rubyid_vars'>vars</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_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
<span class='ivar'>@binding</span><span class='period'>.</span><span class='id identifier rubyid_local_variable_set'>local_variable_set</span><span class='lparen'>(</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="run-instance_method">
#<strong>run</strong> &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<div class="note notetag">
<strong>Note:</strong>
<div class='inline'><p>This method is a stub.</p>
</div>
</div>
<p>Run the template</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
70
71
72</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 70</span>
<span class='kw'>def</span> <span class='id identifier rubyid_run'>run</span>
<span class='comment'># ... (stub)
</span><span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

249
doc/Hyde/TemplateContext.html

@ -0,0 +1,249 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::TemplateContext
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::TemplateContext";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (T)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">TemplateContext</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::TemplateContext
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Hyde::TemplateContext</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Includes:</dt>
<dd><span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">DSL::CommonMethods</a></span>, <span class='object_link'><a href="DSL/ProbeConstructors.html" title="Hyde::DSL::ProbeConstructors (module)">DSL::ProbeConstructors</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html" title="Hyde::DSL::ProbeMethods (module)">DSL::ProbeMethods</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/template.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Context for template engines</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(parent) &#x21d2; TemplateContext </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of TemplateContext.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/ProbeConstructors.html" title="Hyde::DSL::ProbeConstructors (module)">DSL::ProbeConstructors</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/ProbeConstructors.html#erb-instance_method" title="Hyde::DSL::ProbeConstructors#erb (method)">#erb</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/ProbeMethods.html" title="Hyde::DSL::ProbeMethods (module)">DSL::ProbeMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/ProbeMethods.html#file-instance_method" title="Hyde::DSL::ProbeMethods#file (method)">#file</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#form-instance_method" title="Hyde::DSL::ProbeMethods#form (method)">#form</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#form%3F-instance_method" title="Hyde::DSL::ProbeMethods#form? (method)">#form?</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#header-instance_method" title="Hyde::DSL::ProbeMethods#header (method)">#header</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#remove_header-instance_method" title="Hyde::DSL::ProbeMethods#remove_header (method)">#remove_header</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#request-instance_method" title="Hyde::DSL::ProbeMethods#request (method)">#request</a></span>, <span class='object_link'><a href="DSL/ProbeMethods.html#status-instance_method" title="Hyde::DSL::ProbeMethods#status (method)">#status</a></span></p>
<h3 class="inherited">Methods included from <span class='object_link'><a href="DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">DSL::CommonMethods</a></span></h3>
<p class="inherited"><span class='object_link'><a href="DSL/CommonMethods.html#bounce-instance_method" title="Hyde::DSL::CommonMethods#bounce (method)">#bounce</a></span>, <span class='object_link'><a href="DSL/CommonMethods.html#die-instance_method" title="Hyde::DSL::CommonMethods#die (method)">#die</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(parent) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::TemplateContext (class)">TemplateContext</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of TemplateContext.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
19
20
21</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template.rb', line 19</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_parent'>parent</span><span class='rparen'>)</span>
<span class='ivar'>@origin</span> <span class='op'>=</span> <span class='id identifier rubyid_parent'>parent</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:03 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

127
doc/Hyde/Templates.html

@ -0,0 +1,127 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Module: Hyde::Templates
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Templates";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (T)</a> &raquo;
<span class='title'><span class='object_link'><a href="../Hyde.html" title="Hyde (module)">Hyde</a></span></span>
&raquo;
<span class="title">Templates</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Module: Hyde::Templates
</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/template.rb<span class="defines">,<br />
lib/hyde/template/erb.rb</span>
</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>All template engine adapters subclassed from Template</p>
</div>
</div>
<div class="tags">
</div><h2>Defined Under Namespace</h2>
<p class="children">
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Templates/ERB.html" title="Hyde::Templates::ERB (class)">ERB</a></span>
</p>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

311
doc/Hyde/Templates/ERB.html

@ -0,0 +1,311 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Templates::ERB
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Templates::ERB";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (E)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Templates.html" title="Hyde::Templates (module)">Templates</a></span></span>
&raquo;
<span class="title">ERB</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Templates::ERB
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="../Template.html" title="Hyde::Template (class)">Hyde::Template</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="../Template.html" title="Hyde::Template (class)">Hyde::Template</a></span></li>
<li class="next">Hyde::Templates::ERB</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/template/erb.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>ERB Template language adapter</p>
</div>
</div>
<div class="tags">
</div>
<h2>Instance Attribute Summary</h2>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="../Template.html" title="Hyde::Template (class)">Hyde::Template</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Template.html#binding-instance_method" title="Hyde::Template#binding (method)">#binding</a></span></p>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(input, toplevel: nil, locals: nil) &#x21d2; ERB </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of ERB.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#run-instance_method" title="#run (instance method)">#<strong>run</strong> &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Run the template.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="../Template.html" title="Hyde::Template (class)">Hyde::Template</a></span></h3>
<p class="inherited"><span class='object_link'><a href="../Template.html#local_variable_get-instance_method" title="Hyde::Template#local_variable_get (method)">#local_variable_get</a></span>, <span class='object_link'><a href="../Template.html#local_variable_set-instance_method" title="Hyde::Template#local_variable_set (method)">#local_variable_set</a></span>, <span class='object_link'><a href="../Template.html#local_variables-instance_method" title="Hyde::Template#local_variables (method)">#local_variables</a></span>, <span class='object_link'><a href="../Template.html#override_locals-instance_method" title="Hyde::Template#override_locals (method)">#override_locals</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(input, toplevel: nil, locals: nil) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::Templates::ERB (class)">ERB</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of ERB.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">See Also:</p>
<ul class="see">
<li>Hyde::Template#new</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
11
12
13
14</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template/erb.rb', line 11</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='label'>toplevel:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>locals:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
<span class='kw'>super</span>
<span class='ivar'>@template</span> <span class='op'>=</span> <span class='op'>::</span><span class='const'>ERB</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@template</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="run-instance_method">
#<strong>run</strong> &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Run the template.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/template/erb.rb', line 17</span>
<span class='kw'>def</span> <span class='id identifier rubyid_run'>run</span>
<span class='ivar'>@context</span><span class='period'>.</span><span class='id identifier rubyid_instance_exec'>instance_exec</span><span class='lparen'>(</span><span class='ivar'>@template</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_template'>template</span><span class='op'>|</span>
<span class='id identifier rubyid_template'>template</span><span class='period'>.</span><span class='id identifier rubyid_result'>result</span> <span class='ivar'>@binding</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

414
doc/Hyde/Util.html

@ -79,7 +79,7 @@
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/util/lookup.rb<span class="defines">,<br />
lib/hyde/util/html.rb,<br /> lib/hyde/util/query.rb</span>
lib/hyde/util/html.rb,<br /> lib/hyde/util/query.rb,<br /> lib/hyde/util/header.rb,<br /> lib/hyde/util/sorting.rb,<br /> lib/hyde/util/multipart.rb</span>
</dd>
</dl>
@ -87,8 +87,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Various things that exists for purely logical reasons</p>
<p>Various things that exists for purely logical reasons</p>
</div>
@ -100,9 +99,11 @@
<p class="children">
<strong class="modules">Modules:</strong> <span class='object_link'><a href="Util/ParserCommon.html" title="Hyde::Util::ParserCommon (module)">ParserCommon</a></span>
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Util/Lookup.html" title="Hyde::Util::Lookup (class)">Lookup</a></span>, <span class='object_link'><a href="Util/Query.html" title="Hyde::Util::Query (class)">Query</a></span>
<strong class="classes">Classes:</strong> <span class='object_link'><a href="Util/FormPart.html" title="Hyde::Util::FormPart (class)">FormPart</a></span>, <span class='object_link'><a href="Util/Lookup.html" title="Hyde::Util::Lookup (class)">Lookup</a></span>, <span class='object_link'><a href="Util/MultipartParser.html" title="Hyde::Util::MultipartParser (class)">MultipartParser</a></span>, <span class='object_link'><a href="Util/Query.html" title="Hyde::Util::Query (class)">Query</a></span>
</p>
@ -118,8 +119,8 @@
<dt id="HTTP_STATUS-constant" class="">HTTP_STATUS =
<div class="docstring">
<div class="discussion">
<p>HTTP status codes and descriptions Taken from WEBrick <a href="https://github.com/ruby/webrick/blob/master/lib/webrick/httpstatus.rb" target="_parent" title="https://github.com/ruby/webrick/blob/master/lib/webrick/httpstatus.rb">https://github.com/ruby/webrick/blob/master/lib/webrick/httpstatus.rb</a></p>
<p>HTTP status codes and descriptions
Taken from WEBrick <a href="https://github.com/ruby/webrick/blob/master/lib/webrick/httpstatus.rb" target="_parent" title="https://github.com/ruby/webrick/blob/master/lib/webrick/httpstatus.rb">https://github.com/ruby/webrick/blob/master/lib/webrick/httpstatus.rb</a></p>
</div>
@ -165,6 +166,7 @@
<span class='int'>415</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Unsupported Media Type</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
<span class='int'>416</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Request Range Not Satisfiable</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
<span class='int'>417</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Expectation Failed</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
<span class='int'>418</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>I&#39;m a teapot</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
<span class='int'>422</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Unprocessable Entity</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
<span class='int'>423</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Locked</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
<span class='int'>424</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Failed Dependency</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
@ -217,8 +219,7 @@
<span class="summary_desc"><div class='inline'>
<p>Default error page for Hyde.</p>
<span class="summary_desc"><div class='inline'><p>Default error page for Hyde.</p>
</div></span>
</li>
@ -241,8 +242,76 @@
<span class="summary_desc"><div class='inline'>
<p>Return string with escaped HTML entities.</p>
<span class="summary_desc"><div class='inline'><p>Return string with escaped HTML entities.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#make_value-class_method" title="make_value (class method)">.<strong>make_value</strong>(input, opts, sep = &quot;;&quot;) &#x21d2; String </a>
</span>
<span class="summary_desc"><div class='inline'><p>Construct a parametrized header value.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#parse_value-class_method" title="parse_value (class method)">.<strong>parse_value</strong>(input, sep = &quot;;&quot;) &#x21d2; Array(String, Hash) </a>
</span>
<span class="summary_desc"><div class='inline'><p>Parse parametrized header values.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#unescape_html-class_method" title="unescape_html (class method)">.<strong>unescape_html</strong>(str) &#x21d2; String </a>
</span>
<span class="summary_desc"><div class='inline'><p>Return string with unescaped HTML entities.</p>
</div></span>
</li>
@ -268,8 +337,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Default error page for Hyde</p>
<p>Default error page for Hyde</p>
</div>
@ -288,8 +356,7 @@
&mdash;
<div class='inline'>
<p>HTTP Status code</p>
<div class='inline'><p>HTTP Status code</p>
</div>
</li>
@ -304,8 +371,7 @@
&mdash;
<div class='inline'>
<p>Message to show in backtrace window</p>
<div class='inline'><p>Message to show in backtrace window</p>
</div>
</li>
@ -332,15 +398,6 @@
<pre class="lines">
78
79
80
81
82
83
84
85
86
87
88
89
@ -358,10 +415,19 @@
101
102
103
104</pre>
104
105
106
107
108
109
110
111
112
113</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/html.rb', line 78</span>
<pre class="code"><span class="info file"># File 'lib/hyde/util/html.rb', line 87</span>
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_default_error_page'>default_error_page</span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_backtrace'>backtrace</span><span class='rparen'>)</span>
<span class='id identifier rubyid_backtrace'>backtrace</span> <span class='op'>||=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
@ -407,7 +473,15 @@
</h3><div class="docstring">
<div class="discussion">
<p>Return string with escaped HTML entities</p>
<div class="note notetag">
<strong>Note:</strong>
<div class='inline'><p>Do <strong>not</strong> use this to inject untrusted input into JavaScript code</p>
</div>
</div>
<p>Return string with escaped HTML entities.
or CSS style of the page.
This function is not adequate to prevent string interpolation.</p>
</div>
@ -449,23 +523,279 @@
<pre class="lines">
64
65
66
67
68
69
70</pre>
70
71
72</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/html.rb', line 64</span>
<pre class="code"><span class="info file"># File 'lib/hyde/util/html.rb', line 70</span>
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_escape_html'>escape_html</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
<span class='id identifier rubyid_str'>str</span><span class='period'>.</span><span class='id identifier rubyid_gsub'>gsub</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;amp;</span><span class='tstring_end'>&quot;</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='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;lt;</span><span class='tstring_end'>&quot;</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='tstring_beg'>&quot;</span><span class='tstring_content'>&gt;</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;gt;</span><span class='tstring_end'>&quot;</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='tstring_beg'>&quot;</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;quot;</span><span class='tstring_end'>&quot;</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='tstring_beg'>&quot;</span><span class='tstring_content'>&#39;</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;#39;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
<span class='const'>CGI</span><span class='period'>.</span><span class='id identifier rubyid_escapeHTML'>escapeHTML</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="make_value-class_method">
.<strong>make_value</strong>(input, opts, sep = &quot;;&quot;) &#x21d2; <tt>String</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Construct a parametrized header value</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>input</span>
<span class='type'>(<tt>String</tt>)</span>
</li>
<li>
<span class='name'>opts</span>
<span class='type'>(<tt>Hash</tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>String</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/header.rb', line 25</span>
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_make_value'>make_value</span><span class='lparen'>(</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='comma'>,</span> <span class='id identifier rubyid_sep'>sep</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='rparen'>)</span>
<span class='kw'>unless</span> <span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^[\w!</span><span class='tstring_content'>#$%&amp;&#39;*+-.^_`|~]*=?[^[:cntrl:]\\&quot;,;]+$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span>
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>StandardError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>input contains invalid characters</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span>
<span class='id identifier rubyid_output'>output</span> <span class='op'>=</span> <span class='id identifier rubyid_input'>input</span>
<span class='id identifier rubyid_opts'>opts</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_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
<span class='id identifier rubyid_output'>output</span> <span class='op'>+=</span> <span class='kw'>if</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>String</span>
<span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sep'>sep</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_content'>=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_value'>value</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>else</span>
<span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sep'>sep</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span>
<span class='kw'>end</span>
<span class='id identifier rubyid_output'>output</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="parse_value-class_method">
.<strong>parse_value</strong>(input, sep = &quot;;&quot;) &#x21d2; <tt>Array(String, Hash)</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Parse parametrized header values</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>input</span>
<span class='type'>(<tt>String</tt>)</span>
</li>
<li>
<span class='name'>sep</span>
<span class='type'>(<tt>String</tt>, <tt>Regexp</tt>)</span>
<em class="default">(defaults to: <tt>&quot;;&quot;</tt>)</em>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Array(String, Hash)</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
11
12
13
14
15
16
17
18
19</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/header.rb', line 11</span>
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_parse_value'>parse_value</span><span class='lparen'>(</span><span class='id identifier rubyid_input'>input</span><span class='comma'>,</span> <span class='id identifier rubyid_sep'>sep</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='rparen'>)</span>
<span class='id identifier rubyid_parts'>parts</span> <span class='op'>=</span> <span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='id identifier rubyid_sep'>sep</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_x'>x</span><span class='op'>|</span> <span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_decode_uri_component'>decode_uri_component</span><span class='lparen'>(</span><span class='id identifier rubyid_x'>x</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span> <span class='rbrace'>}</span>
<span class='id identifier rubyid_base'>base</span> <span class='op'>=</span> <span class='id identifier rubyid_parts'>parts</span><span class='period'>.</span><span class='id identifier rubyid_shift'>shift</span>
<span class='id identifier rubyid_opts'>opts</span> <span class='op'>=</span> <span class='id identifier rubyid_parts'>parts</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_raw'>raw</span><span class='op'>|</span>
<span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='id identifier rubyid_raw'>raw</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^([^=]*)(?:=(.*)|)\Z</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_a'>to_a</span><span class='lbracket'>[</span><span class='int'>1</span><span class='op'>..</span><span class='rbracket'>]</span>
<span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='lparen'>(</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='op'>&amp;.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^&quot;.*&quot;$</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_value'>value</span><span class='lbracket'>[</span><span class='int'>1</span><span class='op'>..</span><span class='op'>-</span><span class='int'>2</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>or</span> <span class='kw'>true</span><span class='rparen'>)</span><span class='rbracket'>]</span>
<span class='kw'>end</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span>
<span class='lbracket'>[</span><span class='id identifier rubyid_base'>base</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="unescape_html-class_method">
.<strong>unescape_html</strong>(str) &#x21d2; <tt>String</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Return string with unescaped HTML entities.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>str</span>
<span class='type'>(<tt>String</tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>String</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
77
78
79</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/html.rb', line 77</span>
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_unescape_html'>unescape_html</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
<span class='const'>CGI</span><span class='period'>.</span><span class='id identifier rubyid_unescapeHTML'>unescapeHTML</span><span class='lparen'>(</span><span class='id identifier rubyid_str'>str</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -477,7 +807,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

857
doc/Hyde/Util/FormPart.html

@ -0,0 +1,857 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Util::FormPart
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Util::FormPart";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (F)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Util.html" title="Hyde::Util (module)">Util</a></span></span>
&raquo;
<span class="title">FormPart</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Util::FormPart
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Struct</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Struct</li>
<li class="next">Hyde::Util::FormPart</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/util/multipart.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Valid element of form data with headers</p>
</div>
</div>
<div class="tags">
</div>
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#data-instance_method" title="#data (instance method)">#<strong>data</strong> &#x21d2; Object </a>
</span>
<span class="note title readonly">readonly</span>
<span class="summary_desc"><div class='inline'><p>Data received in the field through form data.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#filename-instance_method" title="#filename (instance method)">#<strong>filename</strong> &#x21d2; Object </a>
</span>
<span class="note title readonly">readonly</span>
<span class="summary_desc"><div class='inline'><p>Original name of the sent file.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#filetype-instance_method" title="#filetype (instance method)">#<strong>filetype</strong> &#x21d2; Object </a>
</span>
<span class="note title readonly">readonly</span>
<span class="summary_desc"><div class='inline'><p>MIME-type of the file.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#name-instance_method" title="#name (instance method)">#<strong>name</strong> &#x21d2; Object </a>
</span>
<span class="note title readonly">readonly</span>
<span class="summary_desc"><div class='inline'><p>name of the form part.</p>
</div></span>
</li>
</ul>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#file%3F-instance_method" title="#file? (instance method)">#<strong>file?</strong> &#x21d2; Boolean </a>
</span>
<span class="summary_desc"><div class='inline'><p>Is this form part a file or plain data?.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#headers=-instance_method" title="#headers= (instance method)">#<strong>headers</strong>(value) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>headers recevied from form data.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#simplify-instance_method" title="#simplify (instance method)">#<strong>simplify</strong> &#x21d2; FormPart, String </a>
</span>
<span class="summary_desc"><div class='inline'><p>If FormPart is not a file, simplify to string.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#tempfile=-instance_method" title="#tempfile= (instance method)">#<strong>tempfile</strong>(value) &#x21d2; Object </a>
</span>
<span class="summary_desc"><div class='inline'><p>Temporary file for storing sent file data.</p>
</div></span>
</li>
</ul>
<div id="instance_attr_details" class="attr_details">
<h2>Instance Attribute Details</h2>
<span id=""></span>
<div class="method_details first">
<h3 class="signature first" id="data-instance_method">
#<strong>data</strong> &#x21d2; <tt>Object</tt> <span class="extras">(readonly)</span>
</h3><div class="docstring">
<div class="discussion">
<p>Data received in the field through form data</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 17</span>
<span class='const'><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></span> <span class='op'>=</span> <span class='const'>Struct</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:filename</span><span class='comma'>,</span>
<span class='symbol'>:filetype</span><span class='comma'>,</span> <span class='symbol'>:tempfile</span><span class='comma'>,</span> <span class='symbol'>:headers</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='comment'># Is this form part a file or plain data?
</span> <span class='comment'># @return [Boolean]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span>
<span class='comment'># If FormPart is not a file, simplify to string.
</span> <span class='comment'># @return [FormPart, String]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<span id=""></span>
<div class="method_details ">
<h3 class="signature " id="filename-instance_method">
#<strong>filename</strong> &#x21d2; <tt>Object</tt> <span class="extras">(readonly)</span>
</h3><div class="docstring">
<div class="discussion">
<p>Original name of the sent file</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 17</span>
<span class='const'><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></span> <span class='op'>=</span> <span class='const'>Struct</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:filename</span><span class='comma'>,</span>
<span class='symbol'>:filetype</span><span class='comma'>,</span> <span class='symbol'>:tempfile</span><span class='comma'>,</span> <span class='symbol'>:headers</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='comment'># Is this form part a file or plain data?
</span> <span class='comment'># @return [Boolean]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span>
<span class='comment'># If FormPart is not a file, simplify to string.
</span> <span class='comment'># @return [FormPart, String]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<span id=""></span>
<div class="method_details ">
<h3 class="signature " id="filetype-instance_method">
#<strong>filetype</strong> &#x21d2; <tt>Object</tt> <span class="extras">(readonly)</span>
</h3><div class="docstring">
<div class="discussion">
<p>MIME-type of the file</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 17</span>
<span class='const'><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></span> <span class='op'>=</span> <span class='const'>Struct</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:filename</span><span class='comma'>,</span>
<span class='symbol'>:filetype</span><span class='comma'>,</span> <span class='symbol'>:tempfile</span><span class='comma'>,</span> <span class='symbol'>:headers</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='comment'># Is this form part a file or plain data?
</span> <span class='comment'># @return [Boolean]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span>
<span class='comment'># If FormPart is not a file, simplify to string.
</span> <span class='comment'># @return [FormPart, String]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<span id=""></span>
<div class="method_details ">
<h3 class="signature " id="name-instance_method">
#<strong>name</strong> &#x21d2; <tt>Object</tt> <span class="extras">(readonly)</span>
</h3><div class="docstring">
<div class="discussion">
<p>name of the form part</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 17</span>
<span class='const'><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></span> <span class='op'>=</span> <span class='const'>Struct</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:filename</span><span class='comma'>,</span>
<span class='symbol'>:filetype</span><span class='comma'>,</span> <span class='symbol'>:tempfile</span><span class='comma'>,</span> <span class='symbol'>:headers</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='comment'># Is this form part a file or plain data?
</span> <span class='comment'># @return [Boolean]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span>
<span class='comment'># If FormPart is not a file, simplify to string.
</span> <span class='comment'># @return [FormPart, String]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="file?-instance_method">
#<strong>file?</strong> &#x21d2; <tt>Boolean</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Is this form part a file or plain data?</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Boolean</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
21
22
23</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 21</span>
<span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="headers=-instance_method">
#<strong>headers=</strong>(value) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>headers recevied from form data</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 17</span>
<span class='const'><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></span> <span class='op'>=</span> <span class='const'>Struct</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:filename</span><span class='comma'>,</span>
<span class='symbol'>:filetype</span><span class='comma'>,</span> <span class='symbol'>:tempfile</span><span class='comma'>,</span> <span class='symbol'>:headers</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='comment'># Is this form part a file or plain data?
</span> <span class='comment'># @return [Boolean]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span>
<span class='comment'># If FormPart is not a file, simplify to string.
</span> <span class='comment'># @return [FormPart, String]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="simplify-instance_method">
#<strong>simplify</strong> &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></tt>, <tt>String</tt>
</h3><div class="docstring">
<div class="discussion">
<p>If FormPart is not a file, simplify to string.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></tt>, <tt>String</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
27
28
29</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 27</span>
<span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="tempfile=-instance_method">
#<strong>tempfile=</strong>(value) &#x21d2; <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Temporary file for storing sent file data.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 17</span>
<span class='const'><span class='object_link'><a href="" title="Hyde::Util::FormPart (class)">FormPart</a></span></span> <span class='op'>=</span> <span class='const'>Struct</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:filename</span><span class='comma'>,</span>
<span class='symbol'>:filetype</span><span class='comma'>,</span> <span class='symbol'>:tempfile</span><span class='comma'>,</span> <span class='symbol'>:headers</span><span class='rparen'>)</span> <span class='kw'>do</span>
<span class='comment'># Is this form part a file or plain data?
</span> <span class='comment'># @return [Boolean]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_file?'>file?</span>
<span class='op'>!</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
<span class='kw'>end</span>
<span class='comment'># If FormPart is not a file, simplify to string.
</span> <span class='comment'># @return [FormPart, String]
</span> <span class='kw'>def</span> <span class='id identifier rubyid_simplify'>simplify</span>
<span class='id identifier rubyid_file?'>file?</span> <span class='op'>?</span> <span class='kw'>self</span> <span class='op'>:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span>
<span class='kw'>end</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

44
doc/Hyde/Util/Lookup.html

@ -101,8 +101,7 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Value container with recursive lookup</p>
<p>Value container with recursive lookup</p>
</div>
@ -137,8 +136,7 @@
<span class="summary_desc"><div class='inline'>
<p>Returns the value of attribute parent.</p>
<span class="summary_desc"><div class='inline'><p>Returns the value of attribute parent.</p>
</div></span>
</li>
@ -174,8 +172,7 @@
<span class="summary_desc"><div class='inline'>
<p>Initialize a Lookup from Hash.</p>
<span class="summary_desc"><div class='inline'><p>Initialize a Lookup from Hash.</p>
</div></span>
</li>
@ -207,8 +204,7 @@
<span class="summary_desc"><div class='inline'>
<p>Get a value by key.</p>
<span class="summary_desc"><div class='inline'><p>Get a value by key.</p>
</div></span>
</li>
@ -231,8 +227,7 @@
<span class="summary_desc"><div class='inline'>
<p>Set a value by key.</p>
<span class="summary_desc"><div class='inline'><p>Set a value by key.</p>
</div></span>
</li>
@ -257,8 +252,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Lookup.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Lookup.</p>
</div></span>
</li>
@ -281,8 +275,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Lookup.</p>
<p>Returns a new instance of Lookup.</p>
</div>
@ -348,8 +341,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns the value of attribute parent.</p>
<p>Returns the value of attribute parent.</p>
</div>
@ -396,8 +388,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Initialize a Lookup from Hash</p>
<p>Initialize a Lookup from Hash</p>
</div>
@ -458,8 +449,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Get a value by key</p>
<p>Get a value by key</p>
</div>
@ -478,8 +468,7 @@
&mdash;
<div class='inline'>
<p>key for value</p>
<div class='inline'><p>key for value</p>
</div>
</li>
@ -532,8 +521,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Set a value by key</p>
<p>Set a value by key</p>
</div>
@ -552,8 +540,7 @@
&mdash;
<div class='inline'>
<p>key for value</p>
<div class='inline'><p>key for value</p>
</div>
</li>
@ -568,8 +555,7 @@
&mdash;
<div class='inline'>
<p>value value</p>
<div class='inline'><p>value value</p>
</div>
</li>
@ -603,7 +589,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

487
doc/Hyde/Util/MultipartParser.html

@ -0,0 +1,487 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Hyde::Util::MultipartParser
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Util::MultipartParser";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (M)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Util.html" title="Hyde::Util (module)">Util</a></span></span>
&raquo;
<span class="title">MultipartParser</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Hyde::Util::MultipartParser
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName">Object</span>
<ul class="fullTree">
<li>Object</li>
<li class="next">Hyde::Util::MultipartParser</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Includes:</dt>
<dd><span class='object_link'><a href="ParserCommon.html" title="Hyde::Util::ParserCommon (module)">ParserCommon</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/util/multipart.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>A very naive implementation of a Multipart form parser.</p>
</div>
</div>
<div class="tags">
</div>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(io, boundary) &#x21d2; MultipartParser </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'><p>A new instance of MultipartParser.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#parse-instance_method" title="#parse (instance method)">#<strong>parse</strong> &#x21d2; Array&lt;FormPart, FormFile&gt; </a>
</span>
<span class="summary_desc"><div class='inline'><p>Parse multipart formdata.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#to_h-instance_method" title="#to_h (instance method)">#<strong>to_h</strong> &#x21d2; Hash </a>
</span>
<span class="summary_desc"><div class='inline'><p>Return a hash of current form.</p>
</div></span>
</li>
</ul>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(io, boundary) &#x21d2; <tt><span class='object_link'><a href="" title="Hyde::Util::MultipartParser (class)">MultipartParser</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of MultipartParser.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
35
36
37
38
39
40</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 35</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_boundary'>boundary</span><span class='rparen'>)</span>
<span class='ivar'>@input</span> <span class='op'>=</span> <span class='id identifier rubyid_io'>io</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='const'>StringIO</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='rparen'>)</span> <span class='op'>:</span> <span class='id identifier rubyid_io'>io</span>
<span class='ivar'>@boundary</span> <span class='op'>=</span> <span class='id identifier rubyid_boundary'>boundary</span>
<span class='ivar'>@state</span> <span class='op'>=</span> <span class='symbol'>:idle</span>
<span class='ivar'>@data</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="parse-instance_method">
#<strong>parse</strong> &#x21d2; <tt>Array&lt;<span class='object_link'><a href="FormPart.html" title="Hyde::Util::FormPart (class)">FormPart</a></span>, FormFile&gt;</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Parse multipart formdata</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Array&lt;<span class='object_link'><a href="FormPart.html" title="Hyde::Util::FormPart (class)">FormPart</a></span>, FormFile&gt;</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 48</span>
<span class='kw'>def</span> <span class='id identifier rubyid_parse'>parse</span>
<span class='kw'>return</span> <span class='ivar'>@data</span> <span class='kw'>unless</span> <span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
<span class='kw'>while</span> <span class='lparen'>(</span><span class='id identifier rubyid_line'>line</span> <span class='op'>=</span> <span class='ivar'>@input</span><span class='period'>.</span><span class='id identifier rubyid_gets'>gets</span><span class='rparen'>)</span>
<span class='kw'>case</span> <span class='ivar'>@state</span>
<span class='kw'>when</span> <span class='symbol'>:idle</span> <span class='comment'># waiting for valid boundary
</span> <span class='kw'>if</span> <span class='id identifier rubyid_line'>line</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>--</span><span class='embexpr_beg'>#{</span><span class='ivar'>@boundary</span><span class='embexpr_end'>}</span><span class='tstring_content'>\r\n</span><span class='tstring_end'>&quot;</span></span>
<span class='comment'># transition to :headers on valid boundary
</span> <span class='ivar'>@state</span> <span class='op'>=</span> <span class='symbol'>:headers</span>
<span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="FormPart.html" title="Hyde::Util::FormPart (class)">FormPart</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='op'>*</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='kw'>nil</span><span class='rbracket'>]</span> <span class='op'>*</span> <span class='int'>5</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span>
<span class='kw'>when</span> <span class='symbol'>:headers</span> <span class='comment'># after valid boundary - checking for headers
</span> <span class='kw'>if</span> <span class='id identifier rubyid_line'>line</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\r\n</span><span class='tstring_end'>&quot;</span></span>
<span class='comment'># prepare form field and transition to :data or :file
</span> <span class='ivar'>@state</span> <span class='op'>=</span> <span class='id identifier rubyid_file?'>file?</span><span class='lparen'>(</span><span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='symbol'>:file</span> <span class='op'>:</span> <span class='symbol'>:data</span>
<span class='kw'>if</span> <span class='ivar'>@state</span> <span class='op'>==</span> <span class='symbol'>:data</span>
<span class='id identifier rubyid_setup_data_meta'>setup_data_meta</span><span class='lparen'>(</span><span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='rparen'>)</span>
<span class='kw'>else</span>
<span class='id identifier rubyid_setup_file_meta'>setup_file_meta</span><span class='lparen'>(</span><span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='rparen'>)</span>
<span class='kw'>end</span>
<span class='kw'>next</span>
<span class='kw'>end</span>
<span class='id identifier rubyid_push_header'>push_header</span><span class='lparen'>(</span><span class='id identifier rubyid_line'>line</span><span class='comma'>,</span> <span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
<span class='kw'>when</span> <span class='symbol'>:data</span><span class='comma'>,</span> <span class='symbol'>:file</span> <span class='comment'># after headers - processing form data
</span> <span class='kw'>if</span> <span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
<span class='comment'># transition to :idle on empty headers
</span> <span class='ivar'>@state</span> <span class='op'>=</span> <span class='symbol'>:idle</span>
<span class='kw'>next</span>
<span class='kw'>end</span>
<span class='kw'>if</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>--</span><span class='embexpr_beg'>#{</span><span class='ivar'>@boundary</span><span class='embexpr_end'>}</span><span class='tstring_content'>\r\n</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>--</span><span class='embexpr_beg'>#{</span><span class='ivar'>@boundary</span><span class='embexpr_end'>}</span><span class='tstring_content'>--\r\n</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_line'>line</span>
<span class='comment'># finalize and transition to either :headers or :idle
</span> <span class='kw'>if</span> <span class='ivar'>@state</span> <span class='op'>==</span> <span class='symbol'>:file</span>
<span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_truncate'>truncate</span><span class='lparen'>(</span><span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>-</span> <span class='int'>2</span><span class='rparen'>)</span>
<span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_tempfile'>tempfile</span><span class='period'>.</span><span class='id identifier rubyid_close'>close</span>
<span class='kw'>else</span>
<span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete_suffix!'>delete_suffix!</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\r\n</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span>
<span class='ivar'>@state</span> <span class='op'>=</span> <span class='id identifier rubyid_line'>line</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>--</span><span class='embexpr_beg'>#{</span><span class='ivar'>@boundary</span><span class='embexpr_end'>}</span><span class='tstring_content'>\r\n</span><span class='tstring_end'>&quot;</span></span> <span class='op'>?</span> <span class='symbol'>:headers</span> <span class='op'>:</span> <span class='symbol'>:idle</span>
<span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_append'>append</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="FormPart.html" title="Hyde::Util::FormPart (class)">FormPart</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='op'>*</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='kw'>nil</span><span class='rbracket'>]</span> <span class='op'>*</span> <span class='int'>5</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>next</span>
<span class='kw'>end</span>
<span class='kw'>if</span> <span class='ivar'>@state</span> <span class='op'>==</span> <span class='symbol'>:data</span>
<span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span>
<span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_data'>data</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_line'>line</span>
<span class='kw'>else</span>
<span class='ivar'>@data</span><span class='lbracket'>[</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_tempfile'>tempfile</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_line'>line</span>
<span class='kw'>end</span>
<span class='kw'>end</span>
<span class='kw'>end</span>
<span class='ivar'>@state</span> <span class='op'>=</span> <span class='symbol'>:idle</span>
<span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span>
<span class='ivar'>@data</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<div class="method_details ">
<h3 class="signature " id="to_h-instance_method">
#<strong>to_h</strong> &#x21d2; <tt>Hash</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Return a hash of current form.
(equivalent to Query.parse but for multipart/form-data)</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>Hash</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
106
107
108</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/multipart.rb', line 106</span>
<span class='kw'>def</span> <span class='id identifier rubyid_to_h'>to_h</span>
<span class='id identifier rubyid_flatten'>flatten</span><span class='lparen'>(</span><span class='id identifier rubyid_sort'>sort</span><span class='lparen'>(</span><span class='id identifier rubyid_gen_hash'>gen_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_parse'>parse</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

120
doc/Hyde/Util/ParserCommon.html

@ -0,0 +1,120 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Module: Hyde::Util::ParserCommon
&mdash; Documentation by YARD 0.9.34
</title>
<link rel="stylesheet" href="../../css/style.css" type="text/css" />
<link rel="stylesheet" href="../../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Hyde::Util::ParserCommon";
relpath = '../../';
</script>
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../../_index.html">Index (P)</a> &raquo;
<span class='title'><span class='object_link'><a href="../../Hyde.html" title="Hyde (module)">Hyde</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Util.html" title="Hyde::Util (module)">Util</a></span></span>
&raquo;
<span class="title">ParserCommon</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Module: Hyde::Util::ParserCommon
</h1>
<div class="box_info">
<dl>
<dt>Included in:</dt>
<dd><span class='object_link'><a href="MultipartParser.html" title="Hyde::Util::MultipartParser (class)">MultipartParser</a></span>, <span class='object_link'><a href="Query.html" title="Hyde::Util::Query (class)">Query</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/hyde/util/sorting.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Internal library for generating form hashes</p>
</div>
</div>
<div class="tags">
</div>
</div>
<div id="footer">
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>
</div>
</body>
</html>

175
doc/Hyde/Util/Query.html

@ -87,6 +87,11 @@
<dl>
<dt>Includes:</dt>
<dd><span class='object_link'><a href="ParserCommon.html" title="Hyde::Util::ParserCommon (module)">ParserCommon</a></span></dd>
</dl>
@ -101,8 +106,8 @@
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>Query string parser</p>
<p>TODO: encoding support????
Query string parser</p>
</div>
@ -128,6 +133,29 @@
<li class="public ">
<span class="summary_signature">
<a href="#[]-instance_method" title="#[] (instance method)">#<strong>[]</strong>(key) &#x21d2; String, Array </a>
</span>
<span class="summary_desc"><div class='inline'><p>Get key from query.</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(query) &#x21d2; Query </a>
@ -144,8 +172,7 @@
<span class="summary_desc"><div class='inline'>
<p>A new instance of Query.</p>
<span class="summary_desc"><div class='inline'><p>A new instance of Query.</p>
</div></span>
</li>
@ -168,8 +195,7 @@
<span class="summary_desc"><div class='inline'>
<p>Better(tm) query parser with Returns a hash with arrays Key semantics:.</p>
<span class="summary_desc"><div class='inline'><p>Better(tm) query parser.</p>
</div></span>
</li>
@ -192,8 +218,7 @@
<span class="summary_desc"><div class='inline'>
<p>Shallow query parser (does not do PHP-like array keys).</p>
<span class="summary_desc"><div class='inline'><p>Shallow query parser (does not do PHP-like array keys).</p>
</div></span>
</li>
@ -202,7 +227,13 @@
</ul>
<div id="constructor_details" class="method_details_list">
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
@ -216,8 +247,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Returns a new instance of Query.</p>
<p>Returns a new instance of Query.</p>
</div>
@ -246,12 +276,12 @@
<pre class="lines">
10
11
12</pre>
13
14
15</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 10</span>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 13</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span>
<span class='ivar'>@query</span> <span class='op'>=</span> <span class='id identifier rubyid_query'>query</span>
@ -269,9 +299,9 @@
<div class="method_details first">
<h3 class="signature first" id="parse-instance_method">
<h3 class="signature first" id="[]-instance_method">
#<strong>parse</strong> &#x21d2; <tt>Hash</tt>
#<strong>[]</strong>(key) &#x21d2; <tt>String</tt>, <tt>Array</tt>
@ -279,15 +309,83 @@
</h3><div class="docstring">
<div class="discussion">
<p>Get key from query.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>key</span>
<span class='type'>(<tt>String</tt>)</span>
</li>
</ul>
<p class="tag_title">Returns:</p>
<ul class="return">
<li>
<span class='type'>(<tt>String</tt>, <tt>Array</tt>)</span>
</li>
</ul>
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
40
41
42</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 40</span>
<span class='kw'>def</span> <span class='op'>[]</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
<span class='lparen'>(</span><span class='ivar'>@cache</span> <span class='op'>||=</span> <span class='id identifier rubyid_parse'>parse</span><span class='rparen'>)</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<p>Better(tm) query parser with Returns a hash with arrays Key semantics:</p>
<ul><li>
<p>‘key=value` creates a key value pair</p>
</li><li>
<p>‘key[]=value` appends `value` to an array named `key`</p>
</li><li>
<p><a href="index">key</a>=value` sets `value` at `index` of array named `key`</p>
</li></ul>
<div class="method_details ">
<h3 class="signature " id="parse-instance_method">
#<strong>parse</strong> &#x21d2; <tt>Hash</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Better(tm) query parser.
Returns a hash with arrays.
Key semantics:</p>
<ul>
<li><code>key=value</code> creates a key value pair</li>
<li><code>key[]=value</code> appends <code>value</code> to an array named <code>key</code></li>
<li><code>key[index]=value</code> sets <code>value</code> at <code>index</code> of array named <code>key</code></li>
</ul>
</div>
@ -314,15 +412,15 @@
<pre class="lines">
30
31
32</pre>
33
34
35</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 30</span>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 33</span>
<span class='kw'>def</span> <span class='id identifier rubyid_parse'>parse</span>
<span class='id identifier rubyid_construct_deep_hash'>construct_deep_hash</span><span class='lparen'>(</span><span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_decode_www_form'>decode_www_form</span><span class='lparen'>(</span><span class='ivar'>@query</span><span class='comma'>,</span> <span class='const'>Encoding</span><span class='op'>::</span><span class='const'>UTF_8</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='id identifier rubyid_construct_deep_hash'>construct_deep_hash</span><span class='lparen'>(</span><span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_decode_www_form'>decode_www_form</span><span class='lparen'>(</span><span class='ivar'>@query</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
@ -340,8 +438,7 @@
</h3><div class="docstring">
<div class="discussion">
<p>Shallow query parser (does not do PHP-like array keys)</p>
<p>Shallow query parser (does not do PHP-like array keys)</p>
</div>
@ -368,17 +465,17 @@
<pre class="lines">
16
17
18
19
20</pre>
20
21
22
23</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 16</span>
<pre class="code"><span class="info file"># File 'lib/hyde/util/query.rb', line 19</span>
<span class='kw'>def</span> <span class='id identifier rubyid_parse_shallow'>parse_shallow</span>
<span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_decode_www_form'>decode_www_form</span><span class='lparen'>(</span><span class='ivar'>@query</span><span class='comma'>,</span> <span class='const'>Encoding</span><span class='op'>::</span><span class='const'>UTF_8</span><span class='rparen'>)</span>
<span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_decode_www_form'>decode_www_form</span><span class='lparen'>(</span><span class='ivar'>@query</span><span class='rparen'>)</span>
<span class='period'>.</span><span class='id identifier rubyid_sort_by'>sort_by</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_array'>array</span><span class='op'>|</span> <span class='id identifier rubyid_array'>array</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='rbrace'>}</span>
<span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span>
<span class='kw'>end</span></pre>
@ -392,7 +489,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:58 2023 by
Generated on Wed Sep 13 02:08:04 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

169
doc/_index.html

@ -81,9 +81,16 @@
<ul>
<li>
<span class='object_link'><a href="Hyde/CONNECTHandler.html" title="Hyde::CONNECTHandler (class)">CONNECTHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/CONNECT.html" title="Hyde::Handlers::CONNECT (class)">CONNECT</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/DSL/CommonMethods.html" title="Hyde::DSL::CommonMethods (module)">CommonMethods</a></span>
<small>(Hyde::DSL)</small>
</li>
@ -96,9 +103,9 @@
<ul>
<li>
<span class='object_link'><a href="Hyde/DELETEHandler.html" title="Hyde::DELETEHandler (class)">DELETEHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/DELETE.html" title="Hyde::Handlers::DELETE (class)">DELETE</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
@ -113,14 +120,44 @@
</ul>
<ul id="alpha_E" class="alpha">
<li class="letter">E</li>
<ul>
<li>
<span class='object_link'><a href="Hyde/Templates/ERB.html" title="Hyde::Templates::ERB (class)">ERB</a></span>
<small>(Hyde::Templates)</small>
</li>
</ul>
</ul>
<ul id="alpha_F" class="alpha">
<li class="letter">F</li>
<ul>
<li>
<span class='object_link'><a href="Hyde/Util/FormPart.html" title="Hyde::Util::FormPart (class)">FormPart</a></span>
<small>(Hyde::Util)</small>
</li>
</ul>
</ul>
<ul id="alpha_G" class="alpha">
<li class="letter">G</li>
<ul>
<li>
<span class='object_link'><a href="Hyde/GETHandler.html" title="Hyde::GETHandler (class)">GETHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/GET.html" title="Hyde::Handlers::GET (class)">GET</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
@ -140,14 +177,21 @@
<ul>
<li>
<span class='object_link'><a href="Hyde/HEADHandler.html" title="Hyde::HEADHandler (class)">HEADHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/HEAD.html" title="Hyde::Handlers::HEAD (class)">HEAD</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/Handlers/Handler.html" title="Hyde::Handlers::Handler (class)">Handler</a></span>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/Handler.html" title="Hyde::Handler (class)">Handler</a></span>
<span class='object_link'><a href="Hyde/Handlers.html" title="Hyde::Handlers (module)">Handlers</a></span>
<small>(Hyde)</small>
@ -177,6 +221,24 @@
</ul>
</td><td valign='top' width="33%">
<ul id="alpha_M" class="alpha">
<li class="letter">M</li>
<ul>
<li>
<span class='object_link'><a href="Hyde/Util/MultipartParser.html" title="Hyde::Util::MultipartParser (class)">MultipartParser</a></span>
<small>(Hyde::Util)</small>
</li>
</ul>
</ul>
<ul id="alpha_N" class="alpha">
<li class="letter">N</li>
<ul>
@ -197,9 +259,9 @@
<ul>
<li>
<span class='object_link'><a href="Hyde/OPTIONSHandler.html" title="Hyde::OPTIONSHandler (class)">OPTIONSHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/OPTIONS.html" title="Hyde::Handlers::OPTIONS (class)">OPTIONS</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
@ -207,43 +269,40 @@
</ul>
</td><td valign='top' width="33%">
<ul id="alpha_P" class="alpha">
<li class="letter">P</li>
<ul>
<li>
<span class='object_link'><a href="Hyde/PATCHHandler.html" title="Hyde::PATCHHandler (class)">PATCHHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/PATCH.html" title="Hyde::Handlers::PATCH (class)">PATCH</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/POSTHandler.html" title="Hyde::POSTHandler (class)">POSTHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/POST.html" title="Hyde::Handlers::POST (class)">POST</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/PUTHandler.html" title="Hyde::PUTHandler (class)">PUTHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/PUT.html" title="Hyde::Handlers::PUT (class)">PUT</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/Path.html" title="Hyde::Path (class)">Path</a></span>
<span class='object_link'><a href="Hyde/Util/ParserCommon.html" title="Hyde::Util::ParserCommon (module)">ParserCommon</a></span>
<small>(Hyde)</small>
<small>(Hyde::Util)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/PathBinding.html" title="Hyde::PathBinding (class)">PathBinding</a></span>
<span class='object_link'><a href="Hyde/Path.html" title="Hyde::Path (class)">Path</a></span>
<small>(Hyde)</small>
@ -256,6 +315,13 @@
</li>
<li>
<span class='object_link'><a href="Hyde/PathContext.html" title="Hyde::PathContext (class)">PathContext</a></span>
<small>(Hyde)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/DSL/PathMethods.html" title="Hyde::DSL::PathMethods (module)">PathMethods</a></span>
@ -285,7 +351,14 @@
</li>
<li>
<span class='object_link'><a href="Hyde/ProbeBinding.html" title="Hyde::ProbeBinding (class)">ProbeBinding</a></span>
<span class='object_link'><a href="Hyde/DSL/ProbeConstructors.html" title="Hyde::DSL::ProbeConstructors (module)">ProbeConstructors</a></span>
<small>(Hyde::DSL)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/ProbeContext.html" title="Hyde::ProbeContext (class)">ProbeContext</a></span>
<small>(Hyde)</small>
@ -298,6 +371,13 @@
</li>
<li>
<span class='object_link'><a href="Hyde/ProcessorContext.html" title="Hyde::ProcessorContext (class)">ProcessorContext</a></span>
<small>(Hyde)</small>
</li>
</ul>
</ul>
@ -351,9 +431,9 @@
<ul>
<li>
<span class='object_link'><a href="Hyde/ServeHandler.html" title="Hyde::ServeHandler (class)">ServeHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/Serve.html" title="Hyde::Handlers::Serve (class)">Serve</a></span>
<small>(Hyde)</small>
<small>(Hyde::Handlers)</small>
</li>
@ -365,7 +445,7 @@
</li>
<li>
<span class='object_link'><a href="Hyde/ServerBinding.html" title="Hyde::ServerBinding (class)">ServerBinding</a></span>
<span class='object_link'><a href="Hyde/ServerContext.html" title="Hyde::ServerContext (class)">ServerContext</a></span>
<small>(Hyde)</small>
@ -380,7 +460,35 @@
<ul>
<li>
<span class='object_link'><a href="Hyde/TRACEHandler.html" title="Hyde::TRACEHandler (class)">TRACEHandler</a></span>
<span class='object_link'><a href="Hyde/Handlers/TRACE.html" title="Hyde::Handlers::TRACE (class)">TRACE</a></span>
<small>(Hyde::Handlers)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/Template.html" title="Hyde::Template (class)">Template</a></span>
<small>(Hyde)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/TemplateContext.html" title="Hyde::TemplateContext (class)">TemplateContext</a></span>
<small>(Hyde)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/DSL/TemplateMethods.html" title="Hyde::DSL::TemplateMethods (module)">TemplateMethods</a></span>
<small>(Hyde::DSL)</small>
</li>
<li>
<span class='object_link'><a href="Hyde/Templates.html" title="Hyde::Templates (module)">Templates</a></span>
<small>(Hyde)</small>
@ -390,6 +498,9 @@
</ul>
</td><td valign='top' width="33%">
<ul id="alpha_U" class="alpha">
<li class="letter">U</li>
<ul>
@ -413,7 +524,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:57 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

2
doc/class_list.html
File diff suppressed because it is too large
View File

6
doc/file.README.html

@ -151,11 +151,11 @@
<span class='id identifier rubyid_path'>path</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>important</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
<span class='id identifier rubyid_preprocess'>preprocess</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_req'>req</span><span class='op'>|</span>
<span class='comment'># Implement logging logic here
</span> <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Client at </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>REMOTE_ADDR</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> wanted to access something /important!</span><span class='tstring_end'>&quot;</span></span>
</span> <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Client at </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>remote-addr</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> wanted to access something /important!</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span>
<span class='id identifier rubyid_get'>get</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>answer</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
<span class='id identifier rubyid_header'>header</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>content-type</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>application/json</span><span class='tstring_end'>&quot;</span></span>
<span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&quot;answer&quot;:42, &quot;desc&quot;:&quot;something important!&quot;}</span><span class='tstring_end'>&#39;</span></span>
<span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>\\{&quot;answer&quot;:42, &quot;desc&quot;:&quot;something important!&quot;\\}</span><span class='tstring_end'>&#39;</span></span>
<span class='kw'>end</span>
<span class='kw'>end</span>
<span class='kw'>end</span>
@ -190,7 +190,7 @@
</div></div>
<div id="footer">
Generated on Sat Sep 9 19:10:57 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

6
doc/index.html

@ -151,11 +151,11 @@
<span class='id identifier rubyid_path'>path</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>important</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
<span class='id identifier rubyid_preprocess'>preprocess</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_req'>req</span><span class='op'>|</span>
<span class='comment'># Implement logging logic here
</span> <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Client at </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>REMOTE_ADDR</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> wanted to access something /important!</span><span class='tstring_end'>&quot;</span></span>
</span> <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Client at </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>remote-addr</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'> wanted to access something /important!</span><span class='tstring_end'>&quot;</span></span>
<span class='kw'>end</span>
<span class='id identifier rubyid_get'>get</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>answer</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>do</span>
<span class='id identifier rubyid_header'>header</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>content-type</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>application/json</span><span class='tstring_end'>&quot;</span></span>
<span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&quot;answer&quot;:42, &quot;desc&quot;:&quot;something important!&quot;}</span><span class='tstring_end'>&#39;</span></span>
<span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>\\{&quot;answer&quot;:42, &quot;desc&quot;:&quot;something important!&quot;\\}</span><span class='tstring_end'>&#39;</span></span>
<span class='kw'>end</span>
<span class='kw'>end</span>
<span class='kw'>end</span>
@ -190,7 +190,7 @@
</div></div>
<div id="footer">
Generated on Sat Sep 9 19:10:57 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

408
doc/method_list.html

@ -45,6 +45,14 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Query.html#[]-instance_method" title="Hyde::Util::Query#[] (method)">#[]</a></span>
<small>Hyde::Util::Query</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Lookup.html#[]-class_method" title="Hyde::Util::Lookup.[] (method)">[]</a></span>
<small>Hyde::Util::Lookup</small>
@ -52,7 +60,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Lookup.html#[]-instance_method" title="Hyde::Util::Lookup#[] (method)">#[]</a></span>
<small>Hyde::Util::Lookup</small>
@ -60,7 +68,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Lookup.html#[]=-instance_method" title="Hyde::Util::Lookup#[]= (method)">#[]=</a></span>
<small>Hyde::Util::Lookup</small>
@ -68,7 +76,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Response.html#add_header-instance_method" title="Hyde::Response#add_header (method)">#add_header</a></span>
<small>Hyde::Response</small>
@ -76,6 +84,14 @@
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#binding-instance_method" title="Hyde::Template#binding (method)">#binding</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#body-instance_method" title="Hyde::Request#body (method)">#body</a></span>
@ -94,8 +110,8 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#bounce-instance_method" title="Hyde::DSL::ProbeMethods#bounce (method)">#bounce</a></span>
<small>Hyde::DSL::ProbeMethods</small>
<span class='object_link'><a href="Hyde/DSL/CommonMethods.html#bounce-instance_method" title="Hyde::DSL::CommonMethods#bounce (method)">#bounce</a></span>
<small>Hyde::DSL::CommonMethods</small>
</div>
</li>
@ -173,6 +189,14 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#data-instance_method" title="Hyde::Util::FormPart#data (method)">#data</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util.html#default_error_page-class_method" title="Hyde::Util.default_error_page (method)">default_error_page</a></span>
<small>Hyde::Util</small>
@ -180,7 +204,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#delete-instance_method" title="Hyde::DSL::PathConstructors#delete (method)">#delete</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -188,7 +212,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Response.html#delete_header-instance_method" title="Hyde::Response#delete_header (method)">#delete_header</a></span>
<small>Hyde::Response</small>
@ -196,10 +220,18 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/CommonMethods.html#die-instance_method" title="Hyde::DSL::CommonMethods#die (method)">#die</a></span>
<small>Hyde::DSL::CommonMethods</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#die-instance_method" title="Hyde::DSL::ProbeMethods#die (method)">#die</a></span>
<small>Hyde::DSL::ProbeMethods</small>
<span class='object_link'><a href="Hyde/DSL/ProbeConstructors.html#erb-instance_method" title="Hyde::DSL::ProbeConstructors#erb (method)">#erb</a></span>
<small>Hyde::DSL::ProbeConstructors</small>
</div>
</li>
@ -213,6 +245,30 @@
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#file-instance_method" title="Hyde::DSL::ProbeMethods#file (method)">#file</a></span>
<small>Hyde::DSL::ProbeMethods</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#file%3F-instance_method" title="Hyde::Util::FormPart#file? (method)">#file?</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#filename-instance_method" title="Hyde::Util::FormPart#filename (method)">#filename</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#filepath-instance_method" title="Hyde::Request#filepath (method)">#filepath</a></span>
<small>Hyde::Request</small>
@ -220,6 +276,14 @@
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#filetype-instance_method" title="Hyde::Util::FormPart#filetype (method)">#filetype</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Path.html#filter-instance_method" title="Hyde::Path#filter (method)">#filter</a></span>
@ -244,6 +308,22 @@
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#form-instance_method" title="Hyde::DSL::ProbeMethods#form (method)">#form</a></span>
<small>Hyde::DSL::ProbeMethods</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#form%3F-instance_method" title="Hyde::DSL::ProbeMethods#form? (method)">#form?</a></span>
<small>Hyde::DSL::ProbeMethods</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#get-instance_method" title="Hyde::DSL::PathConstructors#get (method)">#get</a></span>
@ -293,6 +373,14 @@
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#headers=-instance_method" title="Hyde::Util::FormPart#headers= (method)">#headers=</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathMethods.html#index-instance_method" title="Hyde::DSL::PathMethods#index (method)">#index</a></span>
<small>Hyde::DSL::PathMethods</small>
@ -300,7 +388,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Node.html#initialize-instance_method" title="Hyde::Node#initialize (method)">#initialize</a></span>
<small>Hyde::Node</small>
@ -308,10 +396,18 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/ProcessorContext.html#initialize-instance_method" title="Hyde::ProcessorContext#initialize (method)">#initialize</a></span>
<small>Hyde::ProcessorContext</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/PathBinding.html#initialize-instance_method" title="Hyde::PathBinding#initialize (method)">#initialize</a></span>
<small>Hyde::PathBinding</small>
<span class='object_link'><a href="Hyde/PathContext.html#initialize-instance_method" title="Hyde::PathContext#initialize (method)">#initialize</a></span>
<small>Hyde::PathContext</small>
</div>
</li>
@ -325,6 +421,14 @@
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/ProbeContext.html#initialize-instance_method" title="Hyde::ProbeContext#initialize (method)">#initialize</a></span>
<small>Hyde::ProbeContext</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Probe.html#initialize-instance_method" title="Hyde::Probe#initialize (method)">#initialize</a></span>
<small>Hyde::Probe</small>
@ -332,7 +436,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Server.html#initialize-instance_method" title="Hyde::Server#initialize (method)">#initialize</a></span>
<small>Hyde::Server</small>
@ -340,7 +444,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#initialize-instance_method" title="Hyde::Request#initialize (method)">#initialize</a></span>
<small>Hyde::Request</small>
@ -348,7 +452,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Response.html#initialize-instance_method" title="Hyde::Response#initialize (method)">#initialize</a></span>
<small>Hyde::Response</small>
@ -356,7 +460,23 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/TemplateContext.html#initialize-instance_method" title="Hyde::TemplateContext#initialize (method)">#initialize</a></span>
<small>Hyde::TemplateContext</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#initialize-instance_method" title="Hyde::Template#initialize (method)">#initialize</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Query.html#initialize-instance_method" title="Hyde::Util::Query#initialize (method)">#initialize</a></span>
<small>Hyde::Util::Query</small>
@ -364,7 +484,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Lookup.html#initialize-instance_method" title="Hyde::Util::Lookup#initialize (method)">#initialize</a></span>
<small>Hyde::Util::Lookup</small>
@ -372,18 +492,26 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Templates/ERB.html#initialize-instance_method" title="Hyde::Templates::ERB#initialize (method)">#initialize</a></span>
<small>Hyde::Templates::ERB</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/ProbeBinding.html#initialize-instance_method" title="Hyde::ProbeBinding#initialize (method)">#initialize</a></span>
<small>Hyde::ProbeBinding</small>
<span class='object_link'><a href="Hyde/Handlers/Handler.html#initialize-instance_method" title="Hyde::Handlers::Handler#initialize (method)">#initialize</a></span>
<small>Hyde::Handlers::Handler</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Handler.html#initialize-instance_method" title="Hyde::Handler#initialize (method)">#initialize</a></span>
<small>Hyde::Handler</small>
<span class='object_link'><a href="Hyde/Util/MultipartParser.html#initialize-instance_method" title="Hyde::Util::MultipartParser#initialize (method)">#initialize</a></span>
<small>Hyde::Util::MultipartParser</small>
</div>
</li>
@ -398,8 +526,8 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/ServeHandler.html#initialize-instance_method" title="Hyde::ServeHandler#initialize (method)">#initialize</a></span>
<small>Hyde::ServeHandler</small>
<span class='object_link'><a href="Hyde/Handlers/Serve.html#initialize-instance_method" title="Hyde::Handlers::Serve#initialize (method)">#initialize</a></span>
<small>Hyde::Handlers::Serve</small>
</div>
</li>
@ -421,6 +549,46 @@
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#input-instance_method" title="Hyde::Request#input (method)">#input</a></span>
<small>Hyde::Request</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#local_variable_get-instance_method" title="Hyde::Template#local_variable_get (method)">#local_variable_get</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#local_variable_set-instance_method" title="Hyde::Template#local_variable_set (method)">#local_variable_set</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#local_variables-instance_method" title="Hyde::Template#local_variables (method)">#local_variables</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util.html#make_value-class_method" title="Hyde::Util.make_value (method)">make_value</a></span>
<small>Hyde::Util</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Pattern.html#match-instance_method" title="Hyde::Pattern#match (method)">#match</a></span>
<small>Hyde::Pattern</small>
@ -428,7 +596,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/PatternMatching/Glob.html#match-instance_method" title="Hyde::PatternMatching::Glob#match (method)">#match</a></span>
<small>Hyde::PatternMatching::Glob</small>
@ -436,7 +604,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/PatternMatching/ReMatch.html#match-instance_method" title="Hyde::PatternMatching::ReMatch#match (method)">#match</a></span>
<small>Hyde::PatternMatching::ReMatch</small>
@ -444,7 +612,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Pattern.html#match%3F-instance_method" title="Hyde::Pattern#match? (method)">#match?</a></span>
<small>Hyde::Pattern</small>
@ -452,7 +620,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/PatternMatching/Glob.html#match%3F-instance_method" title="Hyde::PatternMatching::Glob#match? (method)">#match?</a></span>
<small>Hyde::PatternMatching::Glob</small>
@ -460,7 +628,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/PatternMatching/ReMatch.html#match%3F-instance_method" title="Hyde::PatternMatching::ReMatch#match? (method)">#match?</a></span>
<small>Hyde::PatternMatching::ReMatch</small>
@ -468,6 +636,14 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#name-instance_method" title="Hyde::Util::FormPart#name (method)">#name</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#options-instance_method" title="Hyde::DSL::PathConstructors#options (method)">#options</a></span>
@ -477,6 +653,14 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#override_locals-instance_method" title="Hyde::Template#override_locals (method)">#override_locals</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#param-instance_method" title="Hyde::Request#param (method)">#param</a></span>
<small>Hyde::Request</small>
@ -484,7 +668,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Lookup.html#parent-instance_method" title="Hyde::Util::Lookup#parent (method)">#parent</a></span>
<small>Hyde::Util::Lookup</small>
@ -492,7 +676,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Query.html#parse-instance_method" title="Hyde::Util::Query#parse (method)">#parse</a></span>
<small>Hyde::Util::Query</small>
@ -500,6 +684,14 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/MultipartParser.html#parse-instance_method" title="Hyde::Util::MultipartParser#parse (method)">#parse</a></span>
<small>Hyde::Util::MultipartParser</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/Query.html#parse_shallow-instance_method" title="Hyde::Util::Query#parse_shallow (method)">#parse_shallow</a></span>
@ -509,6 +701,14 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util.html#parse_value-class_method" title="Hyde::Util.parse_value (method)">parse_value</a></span>
<small>Hyde::Util</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#patch-instance_method" title="Hyde::DSL::PathConstructors#patch (method)">#patch</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -516,7 +716,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#path-instance_method" title="Hyde::Request#path (method)">#path</a></span>
<small>Hyde::Request</small>
@ -524,7 +724,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#path-instance_method" title="Hyde::DSL::PathConstructors#path (method)">#path</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -532,7 +732,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#path_info-instance_method" title="Hyde::Request#path_info (method)">#path_info</a></span>
<small>Hyde::Request</small>
@ -540,7 +740,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#pop_state-instance_method" title="Hyde::Request#pop_state (method)">#pop_state</a></span>
<small>Hyde::Request</small>
@ -548,7 +748,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#post-instance_method" title="Hyde::DSL::PathConstructors#post (method)">#post</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -556,7 +756,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Path.html#postprocess-instance_method" title="Hyde::Path#postprocess (method)">#postprocess</a></span>
<small>Hyde::Path</small>
@ -564,7 +764,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathMethods.html#postprocess-instance_method" title="Hyde::DSL::PathMethods#postprocess (method)">#postprocess</a></span>
<small>Hyde::DSL::PathMethods</small>
@ -572,7 +772,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#postprocessors-instance_method" title="Hyde::Request#postprocessors (method)">#postprocessors</a></span>
<small>Hyde::Request</small>
@ -580,7 +780,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Path.html#preprocess-instance_method" title="Hyde::Path#preprocess (method)">#preprocess</a></span>
<small>Hyde::Path</small>
@ -588,7 +788,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathMethods.html#preprocess-instance_method" title="Hyde::DSL::PathMethods#preprocess (method)">#preprocess</a></span>
<small>Hyde::DSL::PathMethods</small>
@ -596,7 +796,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#probe-instance_method" title="Hyde::DSL::PathConstructors#probe (method)">#probe</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -604,7 +804,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Node.html#process-instance_method" title="Hyde::Node#process (method)">#process</a></span>
<small>Hyde::Node</small>
@ -612,7 +812,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Path.html#process-instance_method" title="Hyde::Path#process (method)">#process</a></span>
<small>Hyde::Path</small>
@ -620,7 +820,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Probe.html#process-instance_method" title="Hyde::Probe#process (method)">#process</a></span>
<small>Hyde::Probe</small>
@ -628,31 +828,31 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Handler.html#process-instance_method" title="Hyde::Handler#process (method)">#process</a></span>
<small>Hyde::Handler</small>
<span class='object_link'><a href="Hyde/Handlers/Handler.html#process-instance_method" title="Hyde::Handlers::Handler#process (method)">#process</a></span>
<small>Hyde::Handlers::Handler</small>
</div>
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/GETHandler.html#process-instance_method" title="Hyde::GETHandler#process (method)">#process</a></span>
<small>Hyde::GETHandler</small>
<span class='object_link'><a href="Hyde/Handlers/GET.html#process-instance_method" title="Hyde::Handlers::GET#process (method)">#process</a></span>
<small>Hyde::Handlers::GET</small>
</div>
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/ServeHandler.html#process-instance_method" title="Hyde::ServeHandler#process (method)">#process</a></span>
<small>Hyde::ServeHandler</small>
<span class='object_link'><a href="Hyde/Handlers/Serve.html#process-instance_method" title="Hyde::Handlers::Serve#process (method)">#process</a></span>
<small>Hyde::Handlers::Serve</small>
</div>
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Path.html#properties-instance_method" title="Hyde::Path#properties (method)">#properties</a></span>
<small>Hyde::Path</small>
@ -660,7 +860,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Probe.html#properties-instance_method" title="Hyde::Probe#properties (method)">#properties</a></span>
<small>Hyde::Probe</small>
@ -668,7 +868,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#push_state-instance_method" title="Hyde::Request#push_state (method)">#push_state</a></span>
<small>Hyde::Request</small>
@ -676,7 +876,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#put-instance_method" title="Hyde::DSL::PathConstructors#put (method)">#put</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -684,7 +884,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#query-instance_method" title="Hyde::Request#query (method)">#query</a></span>
<small>Hyde::Request</small>
@ -692,7 +892,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#register-instance_method" title="Hyde::DSL::PathConstructors#register (method)">#register</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -700,7 +900,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Node.html#reject-instance_method" title="Hyde::Node#reject (method)">#reject</a></span>
<small>Hyde::Node</small>
@ -708,7 +908,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Node.html#remap-instance_method" title="Hyde::Node#remap (method)">#remap</a></span>
<small>Hyde::Node</small>
@ -716,7 +916,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathMethods.html#remap-instance_method" title="Hyde::DSL::PathMethods#remap (method)">#remap</a></span>
<small>Hyde::DSL::PathMethods</small>
@ -724,7 +924,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#remove_header-instance_method" title="Hyde::DSL::ProbeMethods#remove_header (method)">#remove_header</a></span>
<small>Hyde::DSL::ProbeMethods</small>
@ -732,15 +932,15 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Handler.html#request-instance_method" title="Hyde::Handler#request (method)">#request</a></span>
<small>Hyde::Handler</small>
<span class='object_link'><a href="Hyde/Handlers/Handler.html#request-instance_method" title="Hyde::Handlers::Handler#request (method)">#request</a></span>
<small>Hyde::Handlers::Handler</small>
</div>
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/ProbeMethods.html#request-instance_method" title="Hyde::DSL::ProbeMethods#request (method)">#request</a></span>
<small>Hyde::DSL::ProbeMethods</small>
@ -748,7 +948,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#request_method-instance_method" title="Hyde::Request#request_method (method)">#request_method</a></span>
<small>Hyde::Request</small>
@ -756,23 +956,23 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Handler.html#response-instance_method" title="Hyde::Handler#response (method)">#response</a></span>
<small>Hyde::Handler</small>
<span class='object_link'><a href="Hyde/Handlers/Handler.html#response-instance_method" title="Hyde::Handlers::Handler#response (method)">#response</a></span>
<small>Hyde::Handlers::Handler</small>
</div>
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/ServeHandler.html#response-instance_method" title="Hyde::ServeHandler#response (method)">#response</a></span>
<small>Hyde::ServeHandler</small>
<span class='object_link'><a href="Hyde/Handlers/Serve.html#response-instance_method" title="Hyde::Handlers::Serve#response (method)">#response</a></span>
<small>Hyde::Handlers::Serve</small>
</div>
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Node.html#root-instance_method" title="Hyde::Node#root (method)">#root</a></span>
<small>Hyde::Node</small>
@ -780,7 +980,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathMethods.html#root-instance_method" title="Hyde::DSL::PathMethods#root (method)">#root</a></span>
<small>Hyde::DSL::PathMethods</small>
@ -788,7 +988,23 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Template.html#run-instance_method" title="Hyde::Template#run (method)">#run</a></span>
<small>Hyde::Template</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Templates/ERB.html#run-instance_method" title="Hyde::Templates::ERB#run (method)">#run</a></span>
<small>Hyde::Templates::ERB</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#run_postprocessors-instance_method" title="Hyde::Request#run_postprocessors (method)">#run_postprocessors</a></span>
<small>Hyde::Request</small>
@ -796,7 +1012,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#script_name-instance_method" title="Hyde::Request#script_name (method)">#script_name</a></span>
<small>Hyde::Request</small>
@ -804,7 +1020,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#serve-instance_method" title="Hyde::DSL::PathConstructors#serve (method)">#serve</a></span>
<small>Hyde::DSL::PathConstructors</small>
@ -812,7 +1028,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#server_name-instance_method" title="Hyde::Request#server_name (method)">#server_name</a></span>
<small>Hyde::Request</small>
@ -820,7 +1036,7 @@
</li>
<li class="even ">
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#server_port-instance_method" title="Hyde::Request#server_port (method)">#server_port</a></span>
<small>Hyde::Request</small>
@ -828,7 +1044,7 @@
</li>
<li class="odd ">
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#server_protocol-instance_method" title="Hyde::Request#server_protocol (method)">#server_protocol</a></span>
<small>Hyde::Request</small>
@ -836,6 +1052,14 @@
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#simplify-instance_method" title="Hyde::Util::FormPart#simplify (method)">#simplify</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Request.html#splat-instance_method" title="Hyde::Request#splat (method)">#splat</a></span>
@ -868,6 +1092,22 @@
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/FormPart.html#tempfile=-instance_method" title="Hyde::Util::FormPart#tempfile= (method)">#tempfile=</a></span>
<small>Hyde::Util::FormPart</small>
</div>
</li>
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util/MultipartParser.html#to_h-instance_method" title="Hyde::Util::MultipartParser#to_h (method)">#to_h</a></span>
<small>Hyde::Util::MultipartParser</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/DSL/PathConstructors.html#trace-instance_method" title="Hyde::DSL::PathConstructors#trace (method)">#trace</a></span>
@ -877,6 +1117,14 @@
<li class="odd ">
<div class="item">
<span class='object_link'><a href="Hyde/Util.html#unescape_html-class_method" title="Hyde::Util.unescape_html (method)">unescape_html</a></span>
<small>Hyde::Util</small>
</div>
</li>
<li class="even ">
<div class="item">
<span class='object_link'><a href="Hyde/Response.html#validate-instance_method" title="Hyde::Response#validate (method)">#validate</a></span>
<small>Hyde::Response</small>

2
doc/top-level-namespace.html

@ -100,7 +100,7 @@
</div>
<div id="footer">
Generated on Sat Sep 9 19:10:57 2023 by
Generated on Wed Sep 13 02:08:01 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.34 (ruby-3.0.6).
</div>

14
examples/extension_testing/extension.ru

@ -0,0 +1,14 @@
# frozen_string_literal: true
$LOAD_PATH.unshift("#{File.dirname(__FILE__)}/lib")
require 'hyde'
require_relative 'external_methods'
app = Hyde::Server.new do
get "/hello" do
header "content-type", "text/plain"
do_hello()
end
end
run app

12
examples/extension_testing/external_methods.rb

@ -0,0 +1,12 @@
# frozen_string_literal: true
module Hyde
module DSL
# Methods shared by probes, preprocessors and filters.
module CommonMethods
def do_hello()
"Hello world!"
end
end
end
end

1
examples/extension_testing/lib

@ -0,0 +1 @@
../../lib

1
examples/extension_testing/readme.txt

@ -0,0 +1 @@
Example of extending base Hyde functionality with additional DSL methods.

1
examples/form/readme.txt

@ -0,0 +1 @@
Example of handling forms in Hyde

4
examples/templates/footer.rhtml

@ -0,0 +1,4 @@
<footer>
<hr>
<p>Footer template part</p>
</footer>

16
examples/templates/helloworld.ru

@ -0,0 +1,16 @@
# frozen_string_literal: true
$LOAD_PATH.unshift("#{File.dirname(__FILE__)}/lib")
require 'hyde'
app = Hyde::Server.new do
remap ENV["PWD"]
get "/" do
header "content-type", "text/html"
localrand = rand
bind = binding
erb(file("index.rhtml"), toplevel: bind).run
end
end
run app

14
examples/templates/index.rhtml

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html>
<head>
<title>Ruby template engine test</title>
</head>
<body>
<h1>
Welcome to another ugly looking test page
</h1>
<hr>
<p> This page exists only to test template engine functionality</p>
<p> Random value = <%= localrand %></p>
</body>
</html>

1
examples/templates/lib

@ -0,0 +1 @@
../../lib

1
examples/templates/readme.txt

@ -0,0 +1 @@
This example demonstrates usage of template engines.

2
lib/hyde.rb

@ -5,11 +5,11 @@ require_relative 'hyde/path'
require_relative 'hyde/probe'
require_relative 'hyde/request'
require_relative 'hyde/response'
require_relative 'hyde/template'
# Hyde is a hideously simple ruby web framework
module Hyde
# Hyde version
# @type [String]
VERSION = '0.8 (beta/rewrite)'
# Hyde branding and version

78
lib/hyde/dsl/constructors_path.rb

@ -0,0 +1,78 @@
# frozen_string_literal: true
module Hyde
# Shared DSL methods
module DSL
# Path (and subclasses) DSL constructors
module PathConstructors
# Append a Node child object to the list of children
def register(obj)
unless obj.is_a? Hyde::Node
raise StandardError, "register accepts node children only"
end
@origin.children.append(obj)
end
# Create a new {Hyde::Path} object
def path(path, &setup)
register(Hyde::Path.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::Probe} object
def probe(path, &_setup)
register(Hyde::Handlers::Probe.new(path, parent: @origin))
end
# Create a new {Hyde::Handlers::GETHandler} object
def get(path, &setup)
register(Hyde::Handlers::GET.new(path, parent: @origin, &setup))
end
# create a new {Hyde::Handlers::POSTHandler} object
def post(path, &setup)
register(Hyde::Handlers::POST.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::PUTHandler} object
def put(path, &setup)
register(Hyde::Handlers::PUT.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::HEADHandler} object
def head(path, &setup)
register(Hyde::Handlers::HEAD.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::DELETEHandler} object
def delete(path, &setup)
register(Hyde::Handlers::DELETE.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::CONNECTHandler} object
def connect(path, &setup)
register(Hyde::Handlers::CONNECT.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::TRACEHandler} object
def trace(path, &setup)
register(Hyde::Handlers::TRACE.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::PATCHHandler} object
def patch(path, &setup)
register(Hyde::Handlers::PATCH.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::OPTIONSHandler} object
def options(path, &setup)
register(Hyde::Handlers::OPTIONS.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Handlers::GETHandler} that serves static files
def serve(path)
register(Hyde::Handlers::Serve.new(path, parent: @origin))
end
end
end
end

14
lib/hyde/dsl/constructors_probe.rb

@ -0,0 +1,14 @@
# frozen_string_literal: true
module Hyde
module DSL
# Probe (and subclasses) DSL construct
module ProbeConstructors
# Create a new erb template
# @see Hyde::Template#new
def erb(input, toplevel: nil, locals: nil)
Hyde::Templates::ERB.new(input, toplevel: toplevel, locals: locals)
end
end
end
end

0
lib/hyde/dsl/common_methods.rb → lib/hyde/dsl/methods_common.rb

0
lib/hyde/dsl/path_methods.rb → lib/hyde/dsl/methods_path.rb

6
lib/hyde/dsl/probe_methods.rb → lib/hyde/dsl/methods_probe.rb

@ -82,6 +82,12 @@ module Hyde
request.input, opts["boundary"]
).to_h
end
# Open a file relative to current filepath
# @see File#open
def file(path, mode = "r", *all, &block)
File.open("#{request.filepath}/#{path}", mode, *all, &block)
end
end
end
end

9
lib/hyde/dsl/methods_template.rb

@ -0,0 +1,9 @@
# frozen_string_literal: true
module Hyde
module DSL
module TemplateMethods
end
end
end

80
lib/hyde/dsl/path_constructors.rb

@ -1,80 +0,0 @@
# frozen_string_literal: true
module Hyde
# Shared DSL methods
module DSL
# Path (and subclasses) DSL constructors
module PathConstructors
# Append a Node child object to the list of children
def register(obj)
unless obj.is_a? Hyde::Node
raise StandardError, "register accepts node children only"
end
@origin.children.append(obj)
end
# Create a new {Hyde::Path} object
def path(path, &setup)
# i don't know WHAT is wrong with this thing. it just is wrong.
# @sg-ignore
register(Hyde::Path.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::Probe} object
def probe(path, &_setup)
register(Hyde::Probe.new(path, parent: @origin))
end
# Create a new {Hyde::GETHandler} object
def get(path, &setup)
register(Hyde::GETHandler.new(path, parent: @origin, &setup))
end
# create a new {Hyde::POSTHandler} object
def post(path, &setup)
register(Hyde::POSTHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::PUTHandler} object
def put(path, &setup)
register(Hyde::PUTHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::HEADHandler} object
def head(path, &setup)
register(Hyde::HEADHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::DELETEHandler} object
def delete(path, &setup)
register(Hyde::DELETEHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::CONNECTHandler} object
def connect(path, &setup)
register(Hyde::CONNECTHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::TRACEHandler} object
def trace(path, &setup)
register(Hyde::TRACEHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::PATCHHandler} object
def patch(path, &setup)
register(Hyde::PATCHHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::OPTIONSHandler} object
def options(path, &setup)
register(Hyde::OPTIONSHandler.new(path, parent: @origin, &setup))
end
# Create a new {Hyde::GETHandler} that serves static files
def serve(path)
register(Hyde::ServeHandler.new(path, parent: @origin))
end
end
end
end

30
lib/hyde/path.rb

@ -2,14 +2,14 @@
require_relative 'pattern_matching'
require_relative 'node'
require_relative 'dsl/path_constructors'
require_relative 'dsl/path_methods'
require_relative 'dsl/common_methods'
require_relative 'dsl/constructors_path'
require_relative 'dsl/methods_path'
require_relative 'dsl/methods_common'
require_relative 'util/lookup'
module Hyde
# Binding that provides execution context for filters and preprocessors.
class ProcessorBinding
# Execution context for filters and preprocessors.
class ProcessorContext
include Hyde::DSL::CommonMethods
def initialize(path)
@ -17,8 +17,8 @@ module Hyde
end
end
# Binding that provides execution context for path setup block.
class PathBinding
# Execution context for path setup block.
class PathContext
include Hyde::DSL::PathConstructors
include Hyde::DSL::PathMethods
@ -29,8 +29,8 @@ module Hyde
# Primary building block of request navigation.
class Path < Hyde::Node
ProcBinding = Hyde::ProcessorBinding
Binding = Hyde::PathBinding
ProcContext = Hyde::ProcessorContext
Context = Hyde::PathContext
# @param path [Object] Object to generate {Hyde::Pattern} from
# @param parent [Hyde::Node] Parent object to inherit properties to
@ -43,10 +43,10 @@ module Hyde
@preprocessors = []
@postprocessors = []
@filters = []
# Bindings setup
binding = self.class::Binding.new(self)
binding.instance_exec(&setup)
@procbinding = self.class::ProcBinding.new(self)
# Contexts setup
context = self.class::Context.new(self)
context.instance_exec(&setup)
@proccontext = self.class::ProcContext.new(self)
end
# Method callback on successful request navigation.
@ -104,7 +104,7 @@ module Hyde
# @return [Boolean] true if request passed all filters
def run_filters(request)
@filters.each do |filter|
return false unless @procbinding.instance_exec(request, &filter)
return false unless @proccontext.instance_exec(request, &filter)
end
true
end
@ -113,7 +113,7 @@ module Hyde
# @param request [Hyde::Request]
def run_preprocessors(request)
@preprocessors.each do |preproc|
@procbinding.instance_exec(request, &preproc)
@proccontext.instance_exec(request, &preproc)
end
end

35
lib/hyde/probe.rb

@ -2,23 +2,30 @@
require_relative 'node'
require_relative 'util/lookup'
require_relative 'dsl/methods_probe'
require_relative 'dsl/methods_common'
require_relative 'dsl/constructors_probe'
require 'pp'
module Hyde
autoload :Handler, "hyde/probe/handler"
autoload :GETHandler, "hyde/probe/http_method"
autoload :POSTHandler, "hyde/probe/http_method"
autoload :HEADHandler, "hyde/probe/http_method"
autoload :PUTHandler, "hyde/probe/http_method"
autoload :DELETEHandler, "hyde/probe/http_method"
autoload :CONNECTHandler, "hyde/probe/http_method"
autoload :OPTIONSHandler, "hyde/probe/http_method"
autoload :TRACEHandler, "hyde/probe/http_method"
autoload :PATCHHandler, "hyde/probe/http_method"
autoload :ServeHandler, "hyde/probe/serve_handler"
# Binding that provides execution context for Probes.
class ProbeBinding
# All subclasses of Hyde::Probe that respond to requests
module Handlers
autoload :Handler, "hyde/probe/handler"
autoload :GET, "hyde/probe/http_method"
autoload :POST, "hyde/probe/http_method"
autoload :HEAD, "hyde/probe/http_method"
autoload :PUT, "hyde/probe/http_method"
autoload :DELETE, "hyde/probe/http_method"
autoload :CONNECT, "hyde/probe/http_method"
autoload :OPTIONS, "hyde/probe/http_method"
autoload :TRACE, "hyde/probe/http_method"
autoload :PATCH, "hyde/probe/http_method"
autoload :Serve, "hyde/probe/serve_handler"
end
# Context that provides execution context for Probes.
class ProbeContext
include Hyde::DSL::ProbeConstructors
include Hyde::DSL::ProbeMethods
include Hyde::DSL::CommonMethods

92
lib/hyde/probe/handler.rb

@ -1,52 +1,56 @@
# frozen_string_literal: true
module Hyde
# Probe that executes a callback on request
class Handler < Hyde::Probe
# @param path [Object]
# @param parent [Hyde::Node]
# @param exec [#call]
def initialize(path, parent:, &exec)
super(path, parent: parent)
@callback = exec
@binding = Hyde::ProbeBinding.new(self)
@response = nil
end
attr_accessor :response
attr_reader :request
require_relative "../probe"
# Method callback on successful request navigation.
# Runs block supplied with object initialization.
# Request's #splat and #param are passed to block.
#
# Callback's returned should be one of viable responses:
#
# - {Hyde::Response} object
# - An array that matches Rack return form
# - An array that matches old (Rack 2.x) return form
# - A string (returned as HTML with code 200)
# - false (bounces the request to next handler)
# @param request [Hyde::Request]
# @return [Boolean] true if further navigation is possible
# @raise [UncaughtThrowError] may raise if die() is called.
def process(request)
@response = nil
return reject(request) unless request.path.match?(/^\/?$/)
@request = request
response = catch(:break) do
@binding.instance_exec(*request.splat,
**request.param,
&@callback)
module Hyde
module Handlers
# Probe that executes a callback on request
class Handler < Hyde::Probe
# @param path [Object]
# @param parent [Hyde::Node]
# @param exec [#call]
def initialize(path, parent:, &exec)
super(path, parent: parent)
@callback = exec
@context = Hyde::ProbeContext.new(self)
@response = nil
end
return false unless response
if @response and [String, File, IO].include? response.class
@response.body = response
throw :finish, @response
attr_accessor :response
attr_reader :request
# Method callback on successful request navigation.
# Runs block supplied with object initialization.
# Request's #splat and #param are passed to block.
#
# Callback's returned should be one of viable responses:
#
# - {Hyde::Response} object
# - An array that matches Rack return form
# - An array that matches old (Rack 2.x) return form
# - A string (returned as HTML with code 200)
# - false (bounces the request to next handler)
# @param request [Hyde::Request]
# @return [Boolean] true if further navigation is possible
# @raise [UncaughtThrowError] may raise if die() is called.
def process(request)
@response = nil
return reject(request) unless request.path.match?(/^\/?$/)
@request = request
response = catch(:break) do
@context.instance_exec(*request.splat,
**request.param,
&@callback)
end
return false unless response
if @response and [String, File, IO].include? response.class
@response.body = response
throw :finish, @response
end
throw :finish, response
end
throw :finish, response
end
end
end

112
lib/hyde/probe/http_method.rb

@ -1,70 +1,74 @@
# frozen_string_literal: true
require_relative "../probe"
module Hyde
# Probe that executes callback on a GET
class GETHandler < Hyde::Handler
METHOD = "GET"
module Handlers
# Probe that executes callback on a GET
class GET < Hyde::Handlers::Handler
METHOD = "GET"
# Method callback on successful request navigation.
# Runs block supplied with object initialization.
# Request's #splat and #param are passed to block.
#
# Callback's returned should be one of viable responses:
#
# - {Hyde::Response} object
# - An array that matches Rack return form
# - An array that matches old (Rack 2.x) return form
# - A string (returned as HTML with code 200)
# - false (bounces the request to next handler)
# @param request [Hyde::Request]
# @return [Boolean] true if further navigation is possible
# @raise [UncaughtThrowError] may raise if die() is called.
def process(request)
unless request.request_method.casecmp(self.class::METHOD).zero?
return false
end
# Method callback on successful request navigation.
# Runs block supplied with object initialization.
# Request's #splat and #param are passed to block.
#
# Callback's returned should be one of viable responses:
#
# - {Hyde::Response} object
# - An array that matches Rack return form
# - An array that matches old (Rack 2.x) return form
# - A string (returned as HTML with code 200)
# - false (bounces the request to next handler)
# @param request [Hyde::Request]
# @return [Boolean] true if further navigation is possible
# @raise [UncaughtThrowError] may raise if die() is called.
def process(request)
unless request.request_method.casecmp(self.class::METHOD).zero?
return false
end
super(request)
super(request)
end
end
end
# Probe that executes callback on a POST
class POSTHandler < GETHandler
METHOD = "POST"
end
# Probe that executes callback on a POST
class POST < GET
METHOD = "POST"
end
# Probe that executes callback on a HEAD
class HEADHandler < GETHandler
METHOD = "HEAD"
end
# Probe that executes callback on a HEAD
class HEAD < GET
METHOD = "HEAD"
end
# Probe that executes callback on a PUT
class PUTHandler < GETHandler
METHOD = "PUT"
end
# Probe that executes callback on a PUT
class PUT < GET
METHOD = "PUT"
end
# Probe that executes callback on a DELETE
class DELETEHandler < GETHandler
METHOD = "DELETE"
end
# Probe that executes callback on a DELETE
class DELETE < GET
METHOD = "DELETE"
end
# Probe that executes callback on a CONNECT
class CONNECTHandler < GETHandler
METHOD = "CONNECT"
end
# Probe that executes callback on a CONNECT
class CONNECT < GET
METHOD = "CONNECT"
end
# Probe that executes callback on a OPTIONS
class OPTIONSHandler < GETHandler
METHOD = "OPTIONS"
end
# Probe that executes callback on a OPTIONS
class OPTIONS < GET
METHOD = "OPTIONS"
end
# Probe that executes callback on a TRACE
class TRACEHandler < GETHandler
METHOD = "TRACE"
end
# Probe that executes callback on a TRACE
class TRACE < GET
METHOD = "TRACE"
end
# Probe that executes callback on a PATCH
class PATCHHandler < GETHandler
METHOD = "PATCH"
# Probe that executes callback on a PATCH
class PATCH < GET
METHOD = "PATCH"
end
end
end

42
lib/hyde/probe/serve_handler.rb

@ -1,28 +1,32 @@
# frozen_string_literal: true
require_relative "../probe"
module Hyde
# Probe that sends files from a location
class ServeHandler < Hyde::Probe
# @param path [Object]
# @param parent [Hyde::Node]
# @param exec [#call]
def initialize(path, parent:)
super(path, parent: parent)
end
module Handlers
# Probe that sends files from a location
class Serve < Hyde::Probe
# @param path [Object]
# @param parent [Hyde::Node]
# @param exec [#call]
def initialize(path, parent:)
super(path, parent: parent)
end
attr_accessor :response
attr_accessor :response
# Method callback on successful request navigation.
# Tries to serve files matched by handler
# @param request [Hyde::Request]
# @return [Boolean] true if file was found
def process(request)
path = File.expand_path(request.filepath)
return unless path.start_with? @properties["path"]
# Method callback on successful request navigation.
# Tries to serve files matched by handler
# @param request [Hyde::Request]
# @return [Boolean] true if file was found
def process(request)
path = File.expand_path(request.filepath)
return unless path.start_with? @properties["path"]
File.open(path.delete_suffix("/"))
rescue StandardError
false
File.open(path.delete_suffix("/"))
rescue StandardError
false
end
end
end
end

5
lib/hyde/server.rb

@ -2,16 +2,15 @@
require_relative 'path'
require_relative 'request'
require_relative 'dsl/path_constructors'
require_relative 'util/html'
module Hyde
class ServerBinding < Hyde::PathBinding
class ServerContext < Hyde::PathContext
end
# A specialized path that can be used directly as a Rack application.
class Server < Hyde::Path
Binding = ServerBinding
Context = ServerContext
# @param parent [Hyde::Node, nil] Parent object to inherit properties to
# @param setup [#call] Setup block

80
lib/hyde/template.rb

@ -1,30 +1,76 @@
# frozen_string_literal: true
require_relative 'dsl/constructors_probe'
require_relative 'dsl/methods_common'
require_relative 'dsl/methods_probe'
module Hyde
# Adapter class for template engines
# @abstract This class does not actually do anything template related.
# All template engine adapters subclassed from Template
module Templates
autoload :ERB, "hyde/template/erb"
end
# Context for template engines
class TemplateContext
include Hyde::DSL::CommonMethods
include Hyde::DSL::ProbeMethods
include Hyde::DSL::ProbeConstructors
def initialize(parent)
@origin = parent
end
end
# Interface for Template engines
# @abstract does not represent any actual template engine.
class Template
# @param filename [String]
# @param input [String, File]
# @param context [Binding, nil]
# @param locals [Hash{Symbol => Object}, nil]
def initialize(filename, context: nil, locals: nil)
@data = File.read(filename)
@context = context or binding
@locals.each do |k, v|
@context.local_variable_set(k, v)
# @param locals [Hash, nil]
def initialize(input, toplevel: nil, locals: nil)
@template = input.is_a?(File) ? input.read : input
input.close if input.is_a? File
@binding = toplevel or binding
locals&.each do |k, v|
@binding.local_variable_set(k,v)
end
@context = TemplateContext.new(self)
end
# Prepare template before rendering.
# (This method is an interface stub)
def prepare
@template = nil # your template generator goes here
# Set local variable
# @param key [Symbol]
# @param value [Object]
def local_variable_set(key, value)
@binding.local_variable_set(key, value)
end
# Render template
# (This method is an interface stub)
def render
(@template ||= prepare).render(@context)
# Get local variable
# @param key [Symbol]
# @return [Object]
def local_variable_get(key)
@binding.local_variable_get(key)
end
# Get an array of defined local variables
# @return [Array(Symbol)]
def local_variables
@binding.local_variables
end
# Override binding variables.
# @param vars [Hash{Symbol => Object}]
def override_locals(vars)
vars.each do |k, v|
@binding.local_variable_set(k, v)
end
end
# Run the template
# @note This method is a stub.
def run
# ... (stub)
end
attr_accessor :binding
end
end

25
lib/hyde/template/erb.rb

@ -0,0 +1,25 @@
# frozen_string_literal: true
require 'erb'
require_relative '../template'
module Hyde
module Templates
# ERB Template language adapter
class ERB < Hyde::Template
# @see Hyde::Template#new
def initialize(input, toplevel: nil, locals: nil)
super
@template = ::ERB.new(@template)
@template.filename = input.is_a?(File) ? input.path : "(Inline)"
end
# Run the template.
def run
@context.instance_exec(@template,@binding) do |template, binding|
template.result binding
end
end
end
end
end
Loading…
Cancel
Save