mattock 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. data/doc/Specifications +0 -37
  2. data/lib/mattock/cascading-definition.rb +36 -0
  3. data/lib/mattock/configurable.rb +46 -5
  4. data/lib/mattock/tasklib.rb +47 -1
  5. data/lib/mattock/yard_extensions.rb +10 -0
  6. metadata +3 -213
  7. data/doc/FileSandbox.html +0 -537
  8. data/doc/FileSandbox/HaveContents.html +0 -279
  9. data/doc/FileSandbox/Sandbox.html +0 -525
  10. data/doc/FileSandbox/SandboxFile.html +0 -622
  11. data/doc/Mattock.html +0 -137
  12. data/doc/Mattock/CascadingDefinition.html +0 -459
  13. data/doc/Mattock/CommandChain.html +0 -456
  14. data/doc/Mattock/CommandLine.html +0 -1312
  15. data/doc/Mattock/CommandLineExampleGroup.html +0 -282
  16. data/doc/Mattock/CommandLineExampleGroup/Matchers.html +0 -109
  17. data/doc/Mattock/CommandRunResult.html +0 -643
  18. data/doc/Mattock/CommandTask.html +0 -464
  19. data/doc/Mattock/Configurable.html +0 -609
  20. data/doc/Mattock/Configurable/ClassMethods.html +0 -754
  21. data/doc/Mattock/Configurable/Struct.html +0 -148
  22. data/doc/Mattock/FileCreationTask.html +0 -177
  23. data/doc/Mattock/FileTask.html +0 -177
  24. data/doc/Mattock/MockCommandResult.html +0 -445
  25. data/doc/Mattock/MultiTask.html +0 -177
  26. data/doc/Mattock/PipelineChain.html +0 -221
  27. data/doc/Mattock/PrereqChain.html +0 -221
  28. data/doc/Mattock/RakeExampleGroup.html +0 -292
  29. data/doc/Mattock/RakeExampleGroup/Matchers.html +0 -109
  30. data/doc/Mattock/RakeExampleGroup/TaskManager.html +0 -131
  31. data/doc/Mattock/RemoteCommandTask.html +0 -423
  32. data/doc/Mattock/ShellEscaped.html +0 -315
  33. data/doc/Mattock/Task.html +0 -181
  34. data/doc/Mattock/TaskLib.html +0 -755
  35. data/doc/Mattock/TaskMixin.html +0 -668
  36. data/doc/Mattock/TaskMixin/ClassMethods.html +0 -166
  37. data/doc/Mattock/TemplateHost.html +0 -320
  38. data/doc/Mattock/ValiseManager.html +0 -257
  39. data/doc/Mattock/WrappingChain.html +0 -221
  40. data/doc/Mattock/YARDExtensions.html +0 -110
  41. data/doc/Mattock/YARDExtensions/DefineHandler.html +0 -253
  42. data/doc/Mattock/YARDExtensions/NilFieldsHandler.html +0 -258
  43. data/doc/Mattock/YARDExtensions/RequiredFieldsHandler.html +0 -205
  44. data/doc/Mattock/YARDExtensions/SettingHandler.html +0 -529
  45. data/doc/Mattock/YARDExtensions/SettingsHandler.html +0 -207
  46. data/doc/RSpecTest.html +0 -233
  47. data/doc/Ungemmer.html +0 -282
  48. data/doc/_index.html +0 -435
  49. data/doc/class_list.html +0 -47
  50. data/doc/coverage/assets/0.5.3/app.js +0 -88
  51. data/doc/coverage/assets/0.5.3/fancybox/blank.gif +0 -0
  52. data/doc/coverage/assets/0.5.3/fancybox/fancy_close.png +0 -0
  53. data/doc/coverage/assets/0.5.3/fancybox/fancy_loading.png +0 -0
  54. data/doc/coverage/assets/0.5.3/fancybox/fancy_nav_left.png +0 -0
  55. data/doc/coverage/assets/0.5.3/fancybox/fancy_nav_right.png +0 -0
  56. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_e.png +0 -0
  57. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_n.png +0 -0
  58. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_ne.png +0 -0
  59. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_nw.png +0 -0
  60. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_s.png +0 -0
  61. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_se.png +0 -0
  62. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_sw.png +0 -0
  63. data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_w.png +0 -0
  64. data/doc/coverage/assets/0.5.3/fancybox/fancy_title_left.png +0 -0
  65. data/doc/coverage/assets/0.5.3/fancybox/fancy_title_main.png +0 -0
  66. data/doc/coverage/assets/0.5.3/fancybox/fancy_title_over.png +0 -0
  67. data/doc/coverage/assets/0.5.3/fancybox/fancy_title_right.png +0 -0
  68. data/doc/coverage/assets/0.5.3/fancybox/fancybox-x.png +0 -0
  69. data/doc/coverage/assets/0.5.3/fancybox/fancybox-y.png +0 -0
  70. data/doc/coverage/assets/0.5.3/fancybox/fancybox.png +0 -0
  71. data/doc/coverage/assets/0.5.3/fancybox/jquery.fancybox-1.3.1.css +0 -363
  72. data/doc/coverage/assets/0.5.3/fancybox/jquery.fancybox-1.3.1.pack.js +0 -44
  73. data/doc/coverage/assets/0.5.3/favicon_green.png +0 -0
  74. data/doc/coverage/assets/0.5.3/favicon_red.png +0 -0
  75. data/doc/coverage/assets/0.5.3/favicon_yellow.png +0 -0
  76. data/doc/coverage/assets/0.5.3/highlight.css +0 -129
  77. data/doc/coverage/assets/0.5.3/highlight.pack.js +0 -1
  78. data/doc/coverage/assets/0.5.3/jquery-1.6.2.min.js +0 -18
  79. data/doc/coverage/assets/0.5.3/jquery.dataTables.min.js +0 -152
  80. data/doc/coverage/assets/0.5.3/jquery.timeago.js +0 -141
  81. data/doc/coverage/assets/0.5.3/jquery.url.js +0 -174
  82. data/doc/coverage/assets/0.5.3/loading.gif +0 -0
  83. data/doc/coverage/assets/0.5.3/magnify.png +0 -0
  84. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  85. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  86. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  87. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  88. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  89. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  90. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  91. data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  92. data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_222222_256x240.png +0 -0
  93. data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  94. data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_454545_256x240.png +0 -0
  95. data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_888888_256x240.png +0 -0
  96. data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  97. data/doc/coverage/assets/0.5.3/smoothness/jquery-ui-1.8.4.custom.css +0 -295
  98. data/doc/coverage/assets/0.5.3/stylesheet.css +0 -383
  99. data/doc/coverage/index.html +0 -5169
  100. data/doc/css/common.css +0 -1
  101. data/doc/css/full_list.css +0 -55
  102. data/doc/css/style.css +0 -322
  103. data/doc/file.README.html +0 -107
  104. data/doc/file_list.html +0 -49
  105. data/doc/frames.html +0 -13
  106. data/doc/index.html +0 -107
  107. data/doc/js/app.js +0 -205
  108. data/doc/js/full_list.js +0 -173
  109. data/doc/js/jquery.js +0 -16
  110. data/doc/method_list.html +0 -950
  111. data/doc/top-level-namespace.html +0 -107
data/doc/css/common.css DELETED
@@ -1 +0,0 @@
1
- /* Override this file with custom rules */
@@ -1,55 +0,0 @@
1
- body {
2
- margin: 0;
3
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
- font-size: 13px;
5
- height: 101%;
6
- overflow-x: hidden;
7
- }
8
-
9
- h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; }
10
- .clear { clear: both; }
11
- #search { position: absolute; right: 5px; top: 9px; padding-left: 24px; }
12
- #content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; }
13
- #full_list { padding: 0; list-style: none; margin-left: 0; }
14
- #full_list ul { padding: 0; }
15
- #full_list li { padding: 5px; padding-left: 12px; margin: 0; font-size: 1.1em; list-style: none; }
16
- #noresults { padding: 7px 12px; }
17
- #content.insearch #noresults { margin-left: 7px; }
18
- ul.collapsed ul, ul.collapsed li { display: none; }
19
- ul.collapsed.search_uncollapsed { display: block; }
20
- ul.collapsed.search_uncollapsed li { display: list-item; }
21
- li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; }
22
- li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; }
23
- li { color: #888; cursor: pointer; }
24
- li.deprecated { text-decoration: line-through; font-style: italic; }
25
- li.r1 { background: #f0f0f0; }
26
- li.r2 { background: #fafafa; }
27
- li:hover { background: #ddd; }
28
- li small:before { content: "("; }
29
- li small:after { content: ")"; }
30
- li small.search_info { display: none; }
31
- a:link, a:visited { text-decoration: none; color: #05a; }
32
- li.clicked { background: #05a; color: #ccc; }
33
- li.clicked a:link, li.clicked a:visited { color: #eee; }
34
- li.clicked a.toggle { opacity: 0.5; background-position: bottom right; }
35
- li.collapsed.clicked a.toggle { background-position: top right; }
36
- #search input { border: 1px solid #bbb; -moz-border-radius: 3px; -webkit-border-radius: 3px; }
37
- #nav { margin-left: 10px; font-size: 0.9em; display: none; color: #aaa; }
38
- #nav a:link, #nav a:visited { color: #358; }
39
- #nav a:hover { background: transparent; color: #5af; }
40
-
41
- .frames #content h1 { margin-top: 0; }
42
- .frames li { white-space: nowrap; cursor: normal; }
43
- .frames li small { display: block; font-size: 0.8em; }
44
- .frames li small:before { content: ""; }
45
- .frames li small:after { content: ""; }
46
- .frames li small.search_info { display: none; }
47
- .frames #search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; }
48
- .frames #content.insearch #search { background-position: center right; }
49
- .frames #search input { width: 110px; }
50
- .frames #nav { display: block; }
51
-
52
- #full_list.insearch li { display: none; }
53
- #full_list.insearch li.found { display: list-item; padding-left: 10px; }
54
- #full_list.insearch li a.toggle { display: none; }
55
- #full_list.insearch li small.search_info { display: block; }
data/doc/css/style.css DELETED
@@ -1,322 +0,0 @@
1
- body {
2
- padding: 0 20px;
3
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
4
- font-size: 13px;
5
- }
6
- body.frames { padding: 0 5px; }
7
- h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
8
- h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
9
- h1.title { margin-bottom: 10px; }
10
- h1.alphaindex { margin-top: 0; font-size: 22px; }
11
- h2 {
12
- padding: 0;
13
- padding-bottom: 3px;
14
- border-bottom: 1px #aaa solid;
15
- font-size: 1.4em;
16
- margin: 1.8em 0 0.5em;
17
- }
18
- h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right; }
19
- .clear { clear: both; }
20
- .inline { display: inline; }
21
- .inline p:first-child { display: inline; }
22
- .docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
23
- .docstring h1 { font-size: 1.2em; }
24
- .docstring h2 { font-size: 1.1em; }
25
- .docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
26
- .summary_desc .object_link, .docstring .object_link { font-family: monospace; }
27
- .rdoc-term { padding-right: 25px; font-weight: bold; }
28
- .rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
29
-
30
- /* style for <ul> */
31
- #filecontents li > p, .docstring li > p { margin: 0px; }
32
- #filecontents ul, .docstring ul { padding-left: 20px; }
33
- /* style for <dl> */
34
- #filecontents dl, .docstring dl { border: 1px solid #ccc; }
35
- #filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
36
- #filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
37
- #filecontents dd > p, .docstring dd > p { margin: 0px; }
38
-
39
- .note {
40
- color: #222;
41
- -moz-border-radius: 3px; -webkit-border-radius: 3px;
42
- background: #e3e4e3; border: 1px solid #d5d5d5; padding: 7px 10px;
43
- display: block;
44
- }
45
- .note.todo { background: #ffffc5; border-color: #ececaa; }
46
- .note.returns_void { background: #efefef; }
47
- .note.deprecated { background: #ffe5e5; border-color: #e9dada; }
48
- .note.private { background: #ffffc5; border-color: #ececaa; }
49
- .note.title { text-transform: lowercase; padding: 1px 5px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
50
- .summary_signature + .note.title { margin-left: 7px; }
51
- h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
52
- .note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
53
- .note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
54
- .note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
55
- .note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
56
- .discussion .note { margin-top: 6px; }
57
- .discussion .note:first-child { margin-top: 0; }
58
-
59
- h3.inherited {
60
- font-style: italic;
61
- font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
62
- font-weight: normal;
63
- padding: 0;
64
- margin: 0;
65
- margin-top: 12px;
66
- margin-bottom: 3px;
67
- font-size: 13px;
68
- }
69
- p.inherited {
70
- padding: 0;
71
- margin: 0;
72
- margin-left: 25px;
73
- }
74
-
75
- #filecontents dl.box, dl.box {
76
- border: 0;
77
- width: 520px;
78
- font-size: 1em;
79
- }
80
- #filecontents dl.box dt, dl.box dt {
81
- float: left;
82
- display: block;
83
- width: 100px;
84
- margin: 0;
85
- text-align: right;
86
- font-weight: bold;
87
- background: transparent;
88
- border: 1px solid #aaa;
89
- border-width: 1px 0px 0px 1px;
90
- padding: 6px 0;
91
- padding-right: 10px;
92
- }
93
- #filecontents dl.box dd, dl.box dd {
94
- float: left;
95
- display: block;
96
- width: 380px;
97
- margin: 0;
98
- padding: 6px 0;
99
- padding-right: 20px;
100
- border: 1px solid #aaa;
101
- border-width: 1px 1px 0 0;
102
- }
103
- #filecontents dl.box .last, dl.box .last {
104
- border-bottom: 1px solid #aaa;
105
- }
106
- #filecontents dl.box .r1, dl.box .r1 { background: #eee; }
107
-
108
- ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
109
- #files { padding-left: 15px; font-size: 1.1em; }
110
-
111
- #files { padding: 0; }
112
- #files li { list-style: none; display: inline; padding: 7px 12px; line-height: 35px; }
113
-
114
- dl.constants { margin-left: 40px; }
115
- dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
116
- dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
117
-
118
- .summary_desc { margin-left: 32px; display: block; font-family: sans-serif; }
119
- .summary_desc tt { font-size: 0.9em; }
120
- dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
121
- dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
122
- dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
123
- dl.constants .discussion *:first-child { margin-top: 0; }
124
- dl.constants .discussion *:last-child { margin-bottom: 0; }
125
-
126
- .method_details { border-top: 1px dotted #aaa; margin-top: 15px; padding-top: 0; }
127
- .method_details.first { border: 0; }
128
- p.signature {
129
- font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
130
- padding: 6px 10px; margin-top: 18px;
131
- background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
132
- }
133
- p.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
134
- p.signature .overload { display: block; }
135
- p.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
136
- p.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
137
- p.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
138
-
139
- .tags h3 { font-size: 1em; margin-bottom: 0; }
140
- .tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
141
- .tags ul li { margin-bottom: 3px; }
142
- .tags ul .name { font-family: monospace; font-weight: bold; }
143
- .tags ul .note { padding: 3px 6px; }
144
- .tags { margin-bottom: 12px; }
145
-
146
- .tags .examples h3 { margin-bottom: 10px; }
147
- .tags .examples h4 { padding: 0; margin: 0; margin-left: 15px; font-weight: bold; font-size: 0.9em; }
148
-
149
- .tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
150
- .tags .overload .overload_item .signature {
151
- padding: 2px 8px;
152
- background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
153
- }
154
- .tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
155
- .tags .overload .docstring { margin-top: 15px; }
156
-
157
- .defines { display: none; }
158
-
159
- #method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
160
-
161
- .showSource { font-size: 0.9em; }
162
- .showSource a:link, .showSource a:visited { text-decoration: none; color: #666; }
163
-
164
- #content a:link, #content a:visited { text-decoration: none; color: #05a; }
165
- #content a:hover { background: #ffffa5; }
166
- div.docstring, p.docstring { margin-right: 6em; }
167
-
168
- ul.summary {
169
- list-style: none;
170
- font-family: monospace;
171
- font-size: 1em;
172
- line-height: 1.5em;
173
- }
174
- ul.summary a:link, ul.summary a:visited {
175
- text-decoration: none; font-size: 1.1em;
176
- }
177
- ul.summary li { margin-bottom: 5px; }
178
- .summary .summary_signature {
179
- padding: 1px 10px;
180
- background: #eaeaff; border: 1px solid #dfdfe5;
181
- -moz-border-radius: 3px; -webkit-border-radius: 3px;
182
- }
183
- .summary_signature:hover { background: #eeeeff; cursor: pointer; }
184
- ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
185
- ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
186
- #content .summary_signature:hover a:link,
187
- #content .summary_signature:hover a:visited {
188
- background: transparent;
189
- color: #48f;
190
- }
191
-
192
- p.inherited a { font-family: monospace; font-size: 0.9em; }
193
- p.inherited { word-spacing: 5px; font-size: 1.2em; }
194
-
195
- p.children { font-size: 1.2em; }
196
- p.children a { font-size: 0.9em; }
197
- p.children strong { font-size: 0.8em; }
198
- p.children strong.modules { padding-left: 5px; }
199
-
200
- ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
201
- ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
202
- ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,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) no-repeat top center; }
203
- ul.fullTree li:first-child { padding-top: 0; background: transparent; }
204
- ul.fullTree li:last-child { padding-bottom: 0; }
205
- .showAll ul.fullTree { display: block; }
206
- .showAll .inheritName { display: none; }
207
-
208
- #search { position: absolute; right: 14px; top: 0px; }
209
- #search a:link, #search a:visited {
210
- display: block; float: left; margin-right: 4px;
211
- padding: 8px 10px; text-decoration: none; color: #05a;
212
- border: 1px solid #d8d8e5;
213
- -moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
214
- -webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px;
215
- background: #eaf0ff;
216
- -webkit-box-shadow: -1px 1px 3px #ddd;
217
- }
218
- #search a:hover { background: #f5faff; color: #06b; }
219
- #search a.active {
220
- background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
221
- -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
222
- -webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px;
223
- }
224
- #search a.inactive { color: #999; }
225
- .frames #search { display: none; }
226
- .inheritanceTree, .toggleDefines { float: right; }
227
-
228
- #menu { font-size: 1.3em; color: #bbb; top: -5px; position: relative; }
229
- #menu .title, #menu a { font-size: 0.7em; }
230
- #menu .title a { font-size: 1em; }
231
- #menu .title { color: #555; }
232
- #menu a:link, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
233
- #menu a:hover { color: #05a; }
234
- #menu .noframes { display: none; }
235
- .frames #menu .noframes { display: inline; float: right; }
236
-
237
- #footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
238
- #footer a:link, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
239
- #footer a:hover { color: #05a; }
240
-
241
- #listing ul.alpha { font-size: 1.1em; }
242
- #listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
243
- #listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
244
- #listing ul.alpha ul { margin: 0; padding-left: 15px; }
245
- #listing ul small { color: #666; font-size: 0.7em; }
246
-
247
- li.r1 { background: #f0f0f0; }
248
- li.r2 { background: #fafafa; }
249
-
250
- #search_frame {
251
- z-index: 9999;
252
- background: #fff;
253
- display: none;
254
- position: absolute;
255
- top: 36px;
256
- right: 18px;
257
- width: 500px;
258
- height: 80%;
259
- overflow-y: scroll;
260
- border: 1px solid #999;
261
- border-collapse: collapse;
262
- -webkit-box-shadow: -7px 5px 25px #aaa;
263
- -moz-box-shadow: -7px 5px 25px #aaa;
264
- -moz-border-radius: 2px;
265
- -webkit-border-radius: 2px;
266
- }
267
-
268
- #content ul.summary li.deprecated .summary_signature a:link,
269
- #content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
270
-
271
- #toc {
272
- padding: 20px; padding-right: 30px; border: 1px solid #ddd; float: right; background: #fff; margin-left: 20px; margin-bottom: 20px;
273
- max-width: 300px;
274
- -webkit-box-shadow: -2px 2px 6px #bbb;
275
- -moz-box-shadow: -2px 2px 6px #bbb;
276
- z-index: 5000;
277
- position: relative;
278
- }
279
- #toc.nofloat { float: none; max-width: none; border: none; padding: 0; margin: 20px 0; -webkit-box-shadow: none; -moz-box-shadow: none; }
280
- #toc.nofloat.hidden { padding: 0; background: 0; margin-bottom: 5px; }
281
- #toc .title { margin: 0; }
282
- #toc ol { padding-left: 1.8em; }
283
- #toc li { font-size: 1.1em; line-height: 1.7em; }
284
- #toc > ol > li { font-size: 1.1em; font-weight: bold; }
285
- #toc ol > ol { font-size: 0.9em; }
286
- #toc ol ol > ol { padding-left: 2.3em; }
287
- #toc ol + li { margin-top: 0.3em; }
288
- #toc.hidden { padding: 10px; background: #f6f6f6; -webkit-box-shadow: none; -moz-box-shadow: none; }
289
- #filecontents h1 + #toc.nofloat { margin-top: 0; }
290
-
291
- /* syntax highlighting */
292
- .source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
293
- #filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
294
- #filecontents pre.code, .docstring pre.code { display: block; }
295
- .source_code .lines { padding-right: 12px; color: #555; text-align: right; }
296
- #filecontents pre.code, .docstring pre.code,
297
- .tags pre.example { padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff; }
298
- pre.code { color: #000; }
299
- pre.code .info.file { color: #555; }
300
- pre.code .val { color: #036A07; }
301
- pre.code .tstring_content,
302
- pre.code .heredoc_beg, pre.code .heredoc_end,
303
- pre.code .qwords_beg, pre.code .qwords_end,
304
- pre.code .tstring, pre.code .dstring { color: #036A07; }
305
- pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
306
- pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
307
- pre.code .dot + pre.code .id,
308
- pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
309
- pre.code .comment { color: #0066FF; }
310
- pre.code .const, pre.code .constant { color: #585CF6; }
311
- pre.code .symbol { color: #C5060B; }
312
- pre.code .kw,
313
- pre.code .label,
314
- pre.code .rubyid_require,
315
- pre.code .rubyid_extend,
316
- pre.code .rubyid_include { color: #0000FF; }
317
- pre.code .ivar { color: #318495; }
318
- pre.code .gvar,
319
- pre.code .rubyid_backref,
320
- pre.code .rubyid_nth_ref { color: #6D79DE; }
321
- pre.code .regexp, .dregexp { color: #036A07; }
322
- pre.code a { border-bottom: 1px dotted #bbf; }
data/doc/file.README.html DELETED
@@ -1,107 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
- <title>
7
- File: README
8
-
9
- &mdash; Documentation by YARD 0.7.5
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- relpath = '';
19
- if (relpath != '') relpath += '/';
20
- </script>
21
-
22
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
23
-
24
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
25
-
26
-
27
- </head>
28
- <body>
29
- <script type="text/javascript" charset="utf-8">
30
- if (window.top.frames.main) document.body.className = 'frames';
31
- </script>
32
-
33
- <div id="header">
34
- <div id="menu">
35
-
36
- <a href="_index.html" title="Index">Index</a> &raquo;
37
- <span class="title">File: README</span>
38
-
39
-
40
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
- </div>
42
-
43
- <div id="search">
44
-
45
- <a id="class_list_link" href="#">Class List</a>
46
-
47
- <a id="method_list_link" href="#">Method List</a>
48
-
49
- <a id="file_list_link" href="#">File List</a>
50
-
51
- </div>
52
- <div class="clear"></div>
53
- </div>
54
-
55
- <iframe id="search_frame"></iframe>
56
-
57
- <div id="content"><div id='filecontents'><h2>Mattock</h2>
58
-
59
- <p>Another tool to use with Rake. Mattock is a collection of handy Rake
60
- extensions I&#39;ve been using elsewhere and generalized.</p>
61
-
62
- <h3>Configurable Tasklibs</h3>
63
-
64
- <p>Rake suggests an idiom for Tasklibs that works very well:</p>
65
-
66
- <pre class="code ruby"><code><span class='const'>Tasklib</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_t'>t</span><span class='op'>|</span>
67
- <span class='id identifier rubyid_t'>t</span><span class='period'>.</span><span class='id identifier rubyid_config'>config</span> <span class='op'>=</span> <span class='symbol'>:x</span>
68
- <span class='kw'>end</span>
69
- </code></pre>
70
-
71
- <p>And that defines some tasks. Rake&#39;s default Tasklib class doesn&#39;t do much to
72
- support that idiom though, so Mattock&#39;s first purpose is to add support for
73
- default settings, a yield into a configuration block, and the a setting
74
- resolution step.</p>
75
-
76
- <h3>A Command line scripting API</h3>
77
-
78
- <p>There&#39;s two reasons to do something more complicate that good old</p>
79
-
80
- <pre class="code ruby"><code> <span class='id identifier rubyid_sh'>sh</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>rm -rf *</span><span class='tstring_end'>'</span></span>
81
- </code></pre>
82
-
83
- <p>First is composibility. With a Mattock::CommandLine, you can pass the
84
- resulting command around and modify it&#39;s arguments or encorporate it into a
85
- larger pipeline easily.</p>
86
-
87
- <p>Second is testability. You can mock out all command line execution and provide
88
- fake responses. Additionally, command results can be recorded to make that
89
- process easier.</p>
90
-
91
- <h3>Easy templating</h3>
92
-
93
- <p>One thing that Thor has on Rake is the ease with which templates can be
94
- rendered to files. Mattock::TemplateHost makes it easy to render overridable
95
- templates based on the object it&#39;s included into.</p>
96
-
97
- <p>For more information, check out <a href="http://nyarly.github.com/mattock/">http://nyarly.github.com/mattock/</a></p>
98
- </div></div>
99
-
100
- <div id="footer">
101
- Generated on Tue Mar 6 03:09:40 2012 by
102
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
103
- 0.7.5 (ruby-1.9.2).
104
- </div>
105
-
106
- </body>
107
- </html>