sleeping_king_studios-docs 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +52 -0
- data/README.md +30 -14
- data/lib/sleeping_king_studios/docs/data/base.rb +24 -4
- data/lib/sleeping_king_studios/docs/data/constant_object.rb +24 -0
- data/lib/sleeping_king_studios/docs/data/metadata.rb +0 -2
- data/lib/sleeping_king_studios/docs/data/method_object.rb +32 -0
- data/lib/sleeping_king_studios/docs/data/module_object.rb +1 -1
- data/lib/sleeping_king_studios/docs/data/namespace_object.rb +26 -2
- data/lib/sleeping_king_studios/docs/data/see_tags/reference_tag.rb +1 -1
- data/lib/sleeping_king_studios/docs/data/types/type.rb +3 -6
- data/lib/sleeping_king_studios/docs/errors/outdated_documentation.rb +79 -0
- data/lib/sleeping_king_studios/docs/errors/registry_error.rb +13 -0
- data/lib/sleeping_king_studios/docs/errors.rb +4 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/backfill_versions.rb +177 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/check.rb +347 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/clobber.rb +99 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/document_version.rb +217 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/generate.rb +202 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/install.rb +271 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/install_templates.rb +125 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/install_workflow.rb +55 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/reference.rb +158 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands/update.rb +32 -0
- data/lib/sleeping_king_studios/docs/jekyll/commands.rb +44 -0
- data/lib/sleeping_king_studios/docs/jekyll/generators/data_generator.rb +85 -0
- data/lib/sleeping_king_studios/docs/jekyll/generators/reference_generator.rb +40 -0
- data/lib/sleeping_king_studios/docs/jekyll/generators/version_generator.rb +66 -0
- data/lib/sleeping_king_studios/docs/jekyll/generators.rb +15 -0
- data/lib/sleeping_king_studios/docs/jekyll.rb +26 -1
- data/lib/sleeping_king_studios/docs/version.rb +2 -2
- data/lib/sleeping_king_studios/docs/yard/build.rb +42 -0
- data/lib/sleeping_king_studios/docs/{commands → yard}/parse.rb +18 -11
- data/lib/sleeping_king_studios/docs/yard/registry.rb +54 -0
- data/lib/sleeping_king_studios/docs/{registry_query.rb → yard/registry_query.rb} +9 -7
- data/lib/sleeping_king_studios/docs/yard.rb +13 -0
- data/lib/sleeping_king_studios/docs.rb +29 -17
- metadata +54 -86
- data/lib/sleeping_king_studios/docs/commands/generate.rb +0 -268
- data/lib/sleeping_king_studios/docs/commands/generators/base.rb +0 -97
- data/lib/sleeping_king_studios/docs/commands/generators/data_generator.rb +0 -68
- data/lib/sleeping_king_studios/docs/commands/generators/reference_generator.rb +0 -59
- data/lib/sleeping_king_studios/docs/commands/generators.rb +0 -15
- data/lib/sleeping_king_studios/docs/commands/installation/install_jekyll.rb +0 -273
- data/lib/sleeping_king_studios/docs/commands/installation/install_templates.rb +0 -125
- data/lib/sleeping_king_studios/docs/commands/installation/install_workflow.rb +0 -121
- data/lib/sleeping_king_studios/docs/commands/installation.rb +0 -15
- data/lib/sleeping_king_studios/docs/commands/write_file.rb +0 -89
- data/lib/sleeping_king_studios/docs/commands.rb +0 -14
- data/lib/sleeping_king_studios/docs/registry.rb +0 -22
- data/lib/sleeping_king_studios/docs/tasks/base.rb +0 -20
- data/lib/sleeping_king_studios/docs/tasks/generate.rb +0 -39
- data/lib/sleeping_king_studios/docs/tasks/installation/install_jekyll.rb +0 -67
- data/lib/sleeping_king_studios/docs/tasks/installation/install_templates.rb +0 -39
- data/lib/sleeping_king_studios/docs/tasks/installation/install_workflow.rb +0 -53
- data/lib/sleeping_king_studios/docs/tasks/installation.rb +0 -8
- data/lib/sleeping_king_studios/docs/tasks/update.rb +0 -35
- data/lib/sleeping_king_studios/docs/tasks.rb +0 -14
- data/lib/sleeping_king_studios/docs/templates/config.yml.erb +0 -24
- data/lib/sleeping_king_studios/docs/templates/deploy-pages.yml.erb +0 -67
- data/lib/sleeping_king_studios/docs/templates/includes/breadcrumbs.md +0 -7
- data/lib/sleeping_king_studios/docs/templates/includes/reference/attribute.md +0 -23
- data/lib/sleeping_king_studios/docs/templates/includes/reference/attributes/heading.md +0 -15
- data/lib/sleeping_king_studios/docs/templates/includes/reference/class.md +0 -27
- data/lib/sleeping_king_studios/docs/templates/includes/reference/constant.md +0 -8
- data/lib/sleeping_king_studios/docs/templates/includes/reference/constants/heading.md +0 -6
- data/lib/sleeping_king_studios/docs/templates/includes/reference/constants/inherited.md +0 -4
- data/lib/sleeping_king_studios/docs/templates/includes/reference/constants/overview.md +0 -60
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/breadcrumbs.md +0 -21
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/class_attributes.md +0 -9
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/class_methods.md +0 -9
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/constants.md +0 -9
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/constructor.md +0 -12
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/definitions.md +0 -23
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/details.md +0 -34
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/instance_attributes.md +0 -9
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/instance_methods.md +0 -17
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/overview.md +0 -74
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/subclasses.md +0 -10
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/class_attributes.md +0 -10
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/class_methods.md +0 -10
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/constants.md +0 -10
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/instance_attributes.md +0 -10
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/instance_methods.md +0 -10
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/overview.md +0 -41
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents.md +0 -27
- data/lib/sleeping_king_studios/docs/templates/includes/reference/method.md +0 -27
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/aliases.md +0 -4
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/heading.md +0 -14
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/inherited.md +0 -4
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/overload.md +0 -18
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/overloads.md +0 -12
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/overview.md +0 -41
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/parameters.md +0 -31
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/post_overview.md +0 -51
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/raises.md +0 -14
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/return_types.md +0 -9
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/returns.md +0 -14
- data/lib/sleeping_king_studios/docs/templates/includes/reference/methods/yields.md +0 -42
- data/lib/sleeping_king_studios/docs/templates/includes/reference/module.md +0 -23
- data/lib/sleeping_king_studios/docs/templates/includes/reference/namespace.md +0 -33
- data/lib/sleeping_king_studios/docs/templates/includes/reference/parent_link.md +0 -6
- data/lib/sleeping_king_studios/docs/templates/includes/reference/reference_link.md +0 -7
- data/lib/sleeping_king_studios/docs/templates/includes/reference/see_link.md +0 -7
- data/lib/sleeping_king_studios/docs/templates/includes/reference/type.md +0 -14
- data/lib/sleeping_king_studios/docs/templates/includes/reference/type_list.md +0 -4
- data/lib/sleeping_king_studios/docs/templates/includes/reference/types/array_type.md +0 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/types/hash_type.md +0 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/types/ordered_type.md +0 -1
- data/lib/sleeping_king_studios/docs/templates/pages/index.md.erb +0 -22
- data/lib/sleeping_king_studios/docs/templates/pages/reference.md.erb +0 -14
- data/lib/sleeping_king_studios/docs/templates/pages/versions.md.erb +0 -13
|
@@ -1,27 +1,39 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require 'cuprum/cli'
|
|
4
|
+
require 'sleeping_king_studios/tools'
|
|
5
|
+
|
|
3
6
|
# Hic iacet Arthurus, rex quondam, rexque futurus.
|
|
4
7
|
module SleepingKingStudios
|
|
5
8
|
# Tooling for working with YARD documentation.
|
|
6
9
|
module Docs
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
def version
|
|
17
|
-
VERSION
|
|
18
|
-
end
|
|
10
|
+
autoload :Data, 'sleeping_king_studios/docs/data'
|
|
11
|
+
autoload :Errors, 'sleeping_king_studios/docs/errors'
|
|
12
|
+
autoload :Jekyll, 'sleeping_king_studios/docs/jekyll'
|
|
13
|
+
autoload :Yard, 'sleeping_king_studios/docs/yard'
|
|
14
|
+
|
|
15
|
+
@initializer = SleepingKingStudios::Tools::Toolbox::Initializer.new do
|
|
16
|
+
Cuprum::Cli.initializer.call
|
|
17
|
+
|
|
18
|
+
SleepingKingStudios::Tools.initializer.call
|
|
19
19
|
end
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
# @return [String] the absolute path to the gem directory.
|
|
22
|
+
def self.gem_path
|
|
23
|
+
pattern = /#{File.join('', 'lib', 'sleeping_king_studios', '')}?\z/
|
|
24
|
+
|
|
25
|
+
__dir__.sub(pattern, '')
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# @return [SleepingKingStudios::Tools::Toolbox::Initializer] the initializer
|
|
29
|
+
# for the module.
|
|
30
|
+
def self.initializer
|
|
31
|
+
@initializer
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# @return [String] The current version of the gem.
|
|
35
|
+
def self.version
|
|
36
|
+
VERSION
|
|
37
|
+
end
|
|
26
38
|
end
|
|
27
39
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sleeping_king_studios-docs
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rob "Merlin" Smith
|
|
@@ -29,6 +29,20 @@ dependencies:
|
|
|
29
29
|
- - ">="
|
|
30
30
|
- !ruby/object:Gem::Version
|
|
31
31
|
version: 1.3.1
|
|
32
|
+
- !ruby/object:Gem::Dependency
|
|
33
|
+
name: cuprum-cli
|
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
|
35
|
+
requirements:
|
|
36
|
+
- - "~>"
|
|
37
|
+
- !ruby/object:Gem::Version
|
|
38
|
+
version: '0.1'
|
|
39
|
+
type: :runtime
|
|
40
|
+
prerelease: false
|
|
41
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
42
|
+
requirements:
|
|
43
|
+
- - "~>"
|
|
44
|
+
- !ruby/object:Gem::Version
|
|
45
|
+
version: '0.1'
|
|
32
46
|
- !ruby/object:Gem::Dependency
|
|
33
47
|
name: erubi
|
|
34
48
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -44,25 +58,33 @@ dependencies:
|
|
|
44
58
|
- !ruby/object:Gem::Version
|
|
45
59
|
version: '1.13'
|
|
46
60
|
- !ruby/object:Gem::Dependency
|
|
47
|
-
name:
|
|
61
|
+
name: plumbum
|
|
48
62
|
requirement: !ruby/object:Gem::Requirement
|
|
49
63
|
requirements:
|
|
50
64
|
- - "~>"
|
|
51
65
|
- !ruby/object:Gem::Version
|
|
52
|
-
version: '1
|
|
53
|
-
- - ">="
|
|
54
|
-
- !ruby/object:Gem::Version
|
|
55
|
-
version: 1.2.1
|
|
66
|
+
version: '0.1'
|
|
56
67
|
type: :runtime
|
|
57
68
|
prerelease: false
|
|
58
69
|
version_requirements: !ruby/object:Gem::Requirement
|
|
59
70
|
requirements:
|
|
60
71
|
- - "~>"
|
|
61
72
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: '1
|
|
63
|
-
|
|
73
|
+
version: '0.1'
|
|
74
|
+
- !ruby/object:Gem::Dependency
|
|
75
|
+
name: sleeping_king_studios-tools
|
|
76
|
+
requirement: !ruby/object:Gem::Requirement
|
|
77
|
+
requirements:
|
|
78
|
+
- - "~>"
|
|
79
|
+
- !ruby/object:Gem::Version
|
|
80
|
+
version: '1.3'
|
|
81
|
+
type: :runtime
|
|
82
|
+
prerelease: false
|
|
83
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
84
|
+
requirements:
|
|
85
|
+
- - "~>"
|
|
64
86
|
- !ruby/object:Gem::Version
|
|
65
|
-
version: 1.
|
|
87
|
+
version: '1.3'
|
|
66
88
|
- !ruby/object:Gem::Dependency
|
|
67
89
|
name: thor
|
|
68
90
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -119,18 +141,6 @@ files:
|
|
|
119
141
|
- LICENSE
|
|
120
142
|
- README.md
|
|
121
143
|
- lib/sleeping_king_studios/docs.rb
|
|
122
|
-
- lib/sleeping_king_studios/docs/commands.rb
|
|
123
|
-
- lib/sleeping_king_studios/docs/commands/generate.rb
|
|
124
|
-
- lib/sleeping_king_studios/docs/commands/generators.rb
|
|
125
|
-
- lib/sleeping_king_studios/docs/commands/generators/base.rb
|
|
126
|
-
- lib/sleeping_king_studios/docs/commands/generators/data_generator.rb
|
|
127
|
-
- lib/sleeping_king_studios/docs/commands/generators/reference_generator.rb
|
|
128
|
-
- lib/sleeping_king_studios/docs/commands/installation.rb
|
|
129
|
-
- lib/sleeping_king_studios/docs/commands/installation/install_jekyll.rb
|
|
130
|
-
- lib/sleeping_king_studios/docs/commands/installation/install_templates.rb
|
|
131
|
-
- lib/sleeping_king_studios/docs/commands/installation/install_workflow.rb
|
|
132
|
-
- lib/sleeping_king_studios/docs/commands/parse.rb
|
|
133
|
-
- lib/sleeping_king_studios/docs/commands/write_file.rb
|
|
134
144
|
- lib/sleeping_king_studios/docs/data.rb
|
|
135
145
|
- lib/sleeping_king_studios/docs/data/base.rb
|
|
136
146
|
- lib/sleeping_king_studios/docs/data/class_object.rb
|
|
@@ -163,77 +173,35 @@ files:
|
|
|
163
173
|
- lib/sleeping_king_studios/docs/errors/file_not_found.rb
|
|
164
174
|
- lib/sleeping_king_studios/docs/errors/invalid_directory.rb
|
|
165
175
|
- lib/sleeping_king_studios/docs/errors/invalid_file.rb
|
|
176
|
+
- lib/sleeping_king_studios/docs/errors/outdated_documentation.rb
|
|
177
|
+
- lib/sleeping_king_studios/docs/errors/registry_error.rb
|
|
166
178
|
- lib/sleeping_king_studios/docs/jekyll.rb
|
|
179
|
+
- lib/sleeping_king_studios/docs/jekyll/commands.rb
|
|
180
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/backfill_versions.rb
|
|
181
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/check.rb
|
|
182
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/clobber.rb
|
|
183
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/document_version.rb
|
|
184
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/generate.rb
|
|
185
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/install.rb
|
|
186
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/install_templates.rb
|
|
187
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/install_workflow.rb
|
|
188
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/reference.rb
|
|
189
|
+
- lib/sleeping_king_studios/docs/jekyll/commands/update.rb
|
|
190
|
+
- lib/sleeping_king_studios/docs/jekyll/generators.rb
|
|
191
|
+
- lib/sleeping_king_studios/docs/jekyll/generators/data_generator.rb
|
|
192
|
+
- lib/sleeping_king_studios/docs/jekyll/generators/reference_generator.rb
|
|
193
|
+
- lib/sleeping_king_studios/docs/jekyll/generators/version_generator.rb
|
|
167
194
|
- lib/sleeping_king_studios/docs/jekyll/plugins.rb
|
|
168
195
|
- lib/sleeping_king_studios/docs/jekyll/plugins/liquid.rb
|
|
169
196
|
- lib/sleeping_king_studios/docs/jekyll/plugins/liquid/filters.rb
|
|
170
197
|
- lib/sleeping_king_studios/docs/jekyll/plugins/liquid/filters/anchorize_slug.rb
|
|
171
198
|
- lib/sleeping_king_studios/docs/jekyll/plugins/required.rb
|
|
172
|
-
- lib/sleeping_king_studios/docs/registry.rb
|
|
173
|
-
- lib/sleeping_king_studios/docs/registry_query.rb
|
|
174
|
-
- lib/sleeping_king_studios/docs/tasks.rb
|
|
175
|
-
- lib/sleeping_king_studios/docs/tasks/base.rb
|
|
176
|
-
- lib/sleeping_king_studios/docs/tasks/generate.rb
|
|
177
|
-
- lib/sleeping_king_studios/docs/tasks/installation.rb
|
|
178
|
-
- lib/sleeping_king_studios/docs/tasks/installation/install_jekyll.rb
|
|
179
|
-
- lib/sleeping_king_studios/docs/tasks/installation/install_templates.rb
|
|
180
|
-
- lib/sleeping_king_studios/docs/tasks/installation/install_workflow.rb
|
|
181
|
-
- lib/sleeping_king_studios/docs/tasks/update.rb
|
|
182
|
-
- lib/sleeping_king_studios/docs/templates/config.yml.erb
|
|
183
|
-
- lib/sleeping_king_studios/docs/templates/deploy-pages.yml.erb
|
|
184
|
-
- lib/sleeping_king_studios/docs/templates/includes/breadcrumbs.md
|
|
185
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/attribute.md
|
|
186
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/attributes/heading.md
|
|
187
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/class.md
|
|
188
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/constant.md
|
|
189
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/constants/heading.md
|
|
190
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/constants/inherited.md
|
|
191
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/constants/overview.md
|
|
192
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/breadcrumbs.md
|
|
193
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/class_attributes.md
|
|
194
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/class_methods.md
|
|
195
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/constants.md
|
|
196
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/constructor.md
|
|
197
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/definitions.md
|
|
198
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/details.md
|
|
199
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/instance_attributes.md
|
|
200
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/instance_methods.md
|
|
201
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/overview.md
|
|
202
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/subclasses.md
|
|
203
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents.md
|
|
204
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/class_attributes.md
|
|
205
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/class_methods.md
|
|
206
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/constants.md
|
|
207
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/instance_attributes.md
|
|
208
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/instance_methods.md
|
|
209
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/overview.md
|
|
210
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/method.md
|
|
211
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/aliases.md
|
|
212
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/heading.md
|
|
213
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/inherited.md
|
|
214
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/overload.md
|
|
215
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/overloads.md
|
|
216
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/overview.md
|
|
217
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/parameters.md
|
|
218
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/post_overview.md
|
|
219
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/raises.md
|
|
220
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/return_types.md
|
|
221
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/returns.md
|
|
222
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/methods/yields.md
|
|
223
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/module.md
|
|
224
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/namespace.md
|
|
225
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/parent_link.md
|
|
226
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/reference_link.md
|
|
227
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/see_link.md
|
|
228
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/type.md
|
|
229
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/type_list.md
|
|
230
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/types/array_type.md
|
|
231
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/types/hash_type.md
|
|
232
|
-
- lib/sleeping_king_studios/docs/templates/includes/reference/types/ordered_type.md
|
|
233
|
-
- lib/sleeping_king_studios/docs/templates/pages/index.md.erb
|
|
234
|
-
- lib/sleeping_king_studios/docs/templates/pages/reference.md.erb
|
|
235
|
-
- lib/sleeping_king_studios/docs/templates/pages/versions.md.erb
|
|
236
199
|
- lib/sleeping_king_studios/docs/version.rb
|
|
200
|
+
- lib/sleeping_king_studios/docs/yard.rb
|
|
201
|
+
- lib/sleeping_king_studios/docs/yard/build.rb
|
|
202
|
+
- lib/sleeping_king_studios/docs/yard/parse.rb
|
|
203
|
+
- lib/sleeping_king_studios/docs/yard/registry.rb
|
|
204
|
+
- lib/sleeping_king_studios/docs/yard/registry_query.rb
|
|
237
205
|
homepage: http://sleepingkingstudios.com
|
|
238
206
|
licenses:
|
|
239
207
|
- MIT
|
|
@@ -258,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
258
226
|
- !ruby/object:Gem::Version
|
|
259
227
|
version: '0'
|
|
260
228
|
requirements: []
|
|
261
|
-
rubygems_version: 4.0.
|
|
229
|
+
rubygems_version: 4.0.20
|
|
262
230
|
specification_version: 4
|
|
263
231
|
summary: Tools for generating a versioned documentation site from YARD docs.
|
|
264
232
|
test_files: []
|
|
@@ -1,268 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'cuprum/command'
|
|
4
|
-
require 'sleeping_king_studios/tools/toolbelt'
|
|
5
|
-
|
|
6
|
-
require 'sleeping_king_studios/docs/commands'
|
|
7
|
-
|
|
8
|
-
module SleepingKingStudios::Docs::Commands
|
|
9
|
-
# Generates YARD documentation files.
|
|
10
|
-
class Generate < SleepingKingStudios::Docs::Commands::Generators::Base # rubocop:disable Metrics/ClassLength
|
|
11
|
-
# @overload initialize(docs_path:, **options)
|
|
12
|
-
# @param docs_path [String] the directory path for generating the
|
|
13
|
-
# documentation files.
|
|
14
|
-
# @param options [Hash] the configured options for the generator.
|
|
15
|
-
#
|
|
16
|
-
# @option options dry_run [Boolean] if true, does not make any changes to
|
|
17
|
-
# the filesystem.
|
|
18
|
-
# @option options force [Boolean] if true, overwrites any existing files.
|
|
19
|
-
# @option options version [String] the code version for the generated
|
|
20
|
-
# documentation.
|
|
21
|
-
# @option options verbose [Boolean] if true, prints status messages to
|
|
22
|
-
# STDOUT.
|
|
23
|
-
def initialize(
|
|
24
|
-
docs_path:,
|
|
25
|
-
error_stream: $stderr,
|
|
26
|
-
output_stream: $stdout,
|
|
27
|
-
**options
|
|
28
|
-
)
|
|
29
|
-
super(docs_path:, **options)
|
|
30
|
-
|
|
31
|
-
@error_stream = error_stream
|
|
32
|
-
@output_stream = output_stream
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
private
|
|
36
|
-
|
|
37
|
-
attr_reader :failures
|
|
38
|
-
|
|
39
|
-
def build_constant(native:)
|
|
40
|
-
SleepingKingStudios::Docs::Data::ConstantObject.new(native:)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
def build_class(native:)
|
|
44
|
-
SleepingKingStudios::Docs::Data::ClassObject.new(native:)
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
def build_method(native:)
|
|
48
|
-
SleepingKingStudios::Docs::Data::MethodObject.new(native:)
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
def build_module(native:)
|
|
52
|
-
SleepingKingStudios::Docs::Data::ModuleObject.new(native:)
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
def build_root_namespace(native:)
|
|
56
|
-
SleepingKingStudios::Docs::Data::RootObject.new(native:)
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
def data_command
|
|
60
|
-
@data_command ||=
|
|
61
|
-
SleepingKingStudios::Docs::Commands::Generators::DataGenerator
|
|
62
|
-
.new(docs_path:, **options)
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
def generate_classes
|
|
66
|
-
puts "\nGenerating Classes:" if verbose? && !registry_classes.empty?
|
|
67
|
-
|
|
68
|
-
registry_classes.each do |native|
|
|
69
|
-
data_object = build_class(native:)
|
|
70
|
-
|
|
71
|
-
puts "- #{data_object.name}" if verbose?
|
|
72
|
-
|
|
73
|
-
generate_data_file(data_object:)
|
|
74
|
-
generate_reference_file(data_object:)
|
|
75
|
-
end
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
def generate_constants
|
|
79
|
-
puts "\nGenerating Constants:" if verbose? && !registry_constants.empty?
|
|
80
|
-
|
|
81
|
-
registry_constants.each do |native|
|
|
82
|
-
data_object = build_constant(native:)
|
|
83
|
-
|
|
84
|
-
puts "- #{data_object.name}" if verbose?
|
|
85
|
-
|
|
86
|
-
generate_data_file(data_object:)
|
|
87
|
-
end
|
|
88
|
-
end
|
|
89
|
-
|
|
90
|
-
def generate_data_file(data_object:, **options)
|
|
91
|
-
report_result(
|
|
92
|
-
command: data_command,
|
|
93
|
-
data_object:,
|
|
94
|
-
result: data_command.call(data_object:, **options),
|
|
95
|
-
**options
|
|
96
|
-
)
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
def generate_methods
|
|
100
|
-
puts "\nGenerating Methods:" if verbose? && !registry_methods.empty?
|
|
101
|
-
|
|
102
|
-
registry_methods.each do |native|
|
|
103
|
-
data_object = build_method(native:)
|
|
104
|
-
|
|
105
|
-
puts "- #{data_object.name}" if verbose?
|
|
106
|
-
|
|
107
|
-
generate_data_file(data_object:)
|
|
108
|
-
end
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
def generate_modules
|
|
112
|
-
puts "\nGenerating Modules:" if verbose? && !registry_modules.empty?
|
|
113
|
-
|
|
114
|
-
registry_modules.each do |native|
|
|
115
|
-
data_object = build_module(native:)
|
|
116
|
-
|
|
117
|
-
puts "- #{data_object.name}" if verbose?
|
|
118
|
-
|
|
119
|
-
generate_data_file(data_object:)
|
|
120
|
-
generate_reference_file(data_object:)
|
|
121
|
-
end
|
|
122
|
-
end
|
|
123
|
-
|
|
124
|
-
def generate_reference_file(data_object:, **options)
|
|
125
|
-
report_result(
|
|
126
|
-
command: reference_command,
|
|
127
|
-
data_object:,
|
|
128
|
-
result: reference_command.call(
|
|
129
|
-
data_object:,
|
|
130
|
-
**options
|
|
131
|
-
),
|
|
132
|
-
**options
|
|
133
|
-
)
|
|
134
|
-
end
|
|
135
|
-
|
|
136
|
-
def generate_root_namespace
|
|
137
|
-
puts 'Generating Root Namespace:' if verbose?
|
|
138
|
-
|
|
139
|
-
data_object = build_root_namespace(native: registry_root)
|
|
140
|
-
|
|
141
|
-
puts '- root namespace' if verbose?
|
|
142
|
-
|
|
143
|
-
generate_data_file(data_object:, data_type: :namespace)
|
|
144
|
-
end
|
|
145
|
-
|
|
146
|
-
def parse_registry(file_path:)
|
|
147
|
-
SleepingKingStudios::Docs::Commands::Parse.new.call(file_path)
|
|
148
|
-
end
|
|
149
|
-
|
|
150
|
-
def process(file_path: nil)
|
|
151
|
-
step { parse_registry(file_path:) }
|
|
152
|
-
|
|
153
|
-
@failures = []
|
|
154
|
-
|
|
155
|
-
generate_root_namespace
|
|
156
|
-
generate_classes
|
|
157
|
-
generate_constants
|
|
158
|
-
generate_methods
|
|
159
|
-
generate_modules
|
|
160
|
-
|
|
161
|
-
report_all_failures
|
|
162
|
-
|
|
163
|
-
nil
|
|
164
|
-
end
|
|
165
|
-
|
|
166
|
-
def puts(string)
|
|
167
|
-
output_stream.puts(string)
|
|
168
|
-
end
|
|
169
|
-
|
|
170
|
-
def reference_command
|
|
171
|
-
@reference_command ||=
|
|
172
|
-
SleepingKingStudios::Docs::Commands::Generators::ReferenceGenerator
|
|
173
|
-
.new(docs_path:, **options)
|
|
174
|
-
end
|
|
175
|
-
|
|
176
|
-
def registry
|
|
177
|
-
SleepingKingStudios::Docs::Registry.instance
|
|
178
|
-
end
|
|
179
|
-
|
|
180
|
-
def registry_classes
|
|
181
|
-
registry
|
|
182
|
-
.select { |obj| obj.type == :class }
|
|
183
|
-
.reject { |obj| obj.tags.any? { |tag| tag.tag_name == 'private' } }
|
|
184
|
-
.sort_by(&:path)
|
|
185
|
-
end
|
|
186
|
-
|
|
187
|
-
def registry_constants
|
|
188
|
-
registry
|
|
189
|
-
.select { |obj| obj.type == :constant && obj.visibility == :public }
|
|
190
|
-
.reject { |obj| obj.tags.any? { |tag| tag.tag_name == 'private' } }
|
|
191
|
-
.sort_by(&:path)
|
|
192
|
-
end
|
|
193
|
-
|
|
194
|
-
def registry_methods
|
|
195
|
-
registry
|
|
196
|
-
.select { |obj| obj.type == :method && obj.visibility == :public }
|
|
197
|
-
.reject { |obj| obj.tags.any? { |tag| tag.tag_name == 'private' } }
|
|
198
|
-
.reject(&:is_alias?)
|
|
199
|
-
.sort_by(&:path)
|
|
200
|
-
end
|
|
201
|
-
|
|
202
|
-
def registry_modules
|
|
203
|
-
registry
|
|
204
|
-
.select { |obj| obj.type == :module }
|
|
205
|
-
.reject { |obj| obj.tags.any? { |tag| tag.tag_name == 'private' } }
|
|
206
|
-
.sort_by(&:path)
|
|
207
|
-
end
|
|
208
|
-
|
|
209
|
-
def registry_root
|
|
210
|
-
registry
|
|
211
|
-
.find { |obj| obj.type == :root }
|
|
212
|
-
end
|
|
213
|
-
|
|
214
|
-
def report_all_failures
|
|
215
|
-
return if failures.empty?
|
|
216
|
-
return unless verbose?
|
|
217
|
-
|
|
218
|
-
warn "\nFailures:"
|
|
219
|
-
|
|
220
|
-
failures.each do |failure|
|
|
221
|
-
report_failure(**failure, nested: true)
|
|
222
|
-
end
|
|
223
|
-
end
|
|
224
|
-
|
|
225
|
-
def report_failure(file_path:, result:, nested: false)
|
|
226
|
-
message = nested ? ' - ' : ''
|
|
227
|
-
message +=
|
|
228
|
-
"FAILURE: unable to write file to #{file_path} - " \
|
|
229
|
-
"#{result.error.class}: #{result.error.message}"
|
|
230
|
-
|
|
231
|
-
warn message
|
|
232
|
-
end
|
|
233
|
-
|
|
234
|
-
def report_result(command:, data_object:, result:, data_type: nil) # rubocop:disable Metrics/MethodLength
|
|
235
|
-
data_type ||= data_object_type(data_object:)
|
|
236
|
-
file_path = command.file_path(
|
|
237
|
-
data_object:,
|
|
238
|
-
data_type:
|
|
239
|
-
)
|
|
240
|
-
|
|
241
|
-
if result.success?
|
|
242
|
-
report_success(file_path:)
|
|
243
|
-
else
|
|
244
|
-
failures << { file_path:, result: }
|
|
245
|
-
|
|
246
|
-
report_failure(file_path:, result:, nested: verbose?)
|
|
247
|
-
end
|
|
248
|
-
|
|
249
|
-
result
|
|
250
|
-
end
|
|
251
|
-
|
|
252
|
-
def report_success(file_path:)
|
|
253
|
-
return unless verbose?
|
|
254
|
-
|
|
255
|
-
message = " - SUCCESS: file written to #{file_path}"
|
|
256
|
-
|
|
257
|
-
puts message
|
|
258
|
-
end
|
|
259
|
-
|
|
260
|
-
def tools
|
|
261
|
-
SleepingKingStudios::Tools::Toolbelt.instance
|
|
262
|
-
end
|
|
263
|
-
|
|
264
|
-
def warn(string)
|
|
265
|
-
error_stream.puts(string)
|
|
266
|
-
end
|
|
267
|
-
end
|
|
268
|
-
end
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'cuprum/command'
|
|
4
|
-
require 'cuprum/exception_handling'
|
|
5
|
-
require 'sleeping_king_studios/tools/toolbelt'
|
|
6
|
-
|
|
7
|
-
require 'sleeping_king_studios/docs/commands/generators'
|
|
8
|
-
|
|
9
|
-
module SleepingKingStudios::Docs::Commands::Generators
|
|
10
|
-
# Abstract base class for writing generator classes.
|
|
11
|
-
class Base < Cuprum::Command
|
|
12
|
-
include Cuprum::ExceptionHandling
|
|
13
|
-
|
|
14
|
-
# @param docs_path [String] the directory path for generating the
|
|
15
|
-
# documentation files.
|
|
16
|
-
# @param options [Hash] the configured options for the generator.
|
|
17
|
-
#
|
|
18
|
-
# @option options dry_run [Boolean] if true, does not make any changes to
|
|
19
|
-
# the filesystem.
|
|
20
|
-
# @option options force [Boolean] if true, overwrites any existing files.
|
|
21
|
-
# @option options version [String] the code version for the generated
|
|
22
|
-
# documentation.
|
|
23
|
-
# @option options verbose [Boolean] if true, prints status messages to
|
|
24
|
-
# STDOUT.
|
|
25
|
-
def initialize(docs_path:, **options)
|
|
26
|
-
super()
|
|
27
|
-
|
|
28
|
-
@docs_path = docs_path
|
|
29
|
-
@options = default_options.merge(options)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
# @return [String] the directory path for generating the documentation
|
|
33
|
-
# files.
|
|
34
|
-
attr_reader :docs_path
|
|
35
|
-
|
|
36
|
-
# @return [Hash] the configured options for the generator.
|
|
37
|
-
attr_reader :options
|
|
38
|
-
|
|
39
|
-
# @return [Boolean] if true, does not make any changes to the filesystem.
|
|
40
|
-
def dry_run?
|
|
41
|
-
@options[:dry_run]
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# @return [Boolean] if true, overwrites any existing files.
|
|
45
|
-
def force?
|
|
46
|
-
@options[:force]
|
|
47
|
-
end
|
|
48
|
-
|
|
49
|
-
# @return [String] the relative path to the Jekyll templates for each data
|
|
50
|
-
# type.
|
|
51
|
-
def template_path
|
|
52
|
-
@options.fetch(:template_path, 'reference')
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
# @return [Boolean] if true, prints status messages to STDOUT.
|
|
56
|
-
def verbose?
|
|
57
|
-
@options[:verbose]
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# @return [String] the code version for the generated documentation.
|
|
61
|
-
def version
|
|
62
|
-
@options[:version]
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
private
|
|
66
|
-
|
|
67
|
-
attr_reader :error_stream
|
|
68
|
-
|
|
69
|
-
attr_reader :output_stream
|
|
70
|
-
|
|
71
|
-
def data_object_type(data_object:)
|
|
72
|
-
data_object
|
|
73
|
-
.class
|
|
74
|
-
.name
|
|
75
|
-
.split('::')
|
|
76
|
-
.last
|
|
77
|
-
.then { |str| str[0...-6] }
|
|
78
|
-
.then { |str| tools.string_tools.underscore(str) }
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
def default_options
|
|
82
|
-
{
|
|
83
|
-
dry_run: false,
|
|
84
|
-
force: false,
|
|
85
|
-
verbose: false
|
|
86
|
-
}
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
def tools
|
|
90
|
-
SleepingKingStudios::Tools::Toolbelt.instance
|
|
91
|
-
end
|
|
92
|
-
|
|
93
|
-
def version_string
|
|
94
|
-
version || '*'
|
|
95
|
-
end
|
|
96
|
-
end
|
|
97
|
-
end
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'yaml'
|
|
4
|
-
|
|
5
|
-
require 'sleeping_king_studios/tools/toolbelt'
|
|
6
|
-
|
|
7
|
-
require 'sleeping_king_studios/docs/commands/generators'
|
|
8
|
-
|
|
9
|
-
module SleepingKingStudios::Docs::Commands::Generators
|
|
10
|
-
# Generator for writing data files.
|
|
11
|
-
class DataGenerator < SleepingKingStudios::Docs::Commands::Generators::Base
|
|
12
|
-
# Determines the generated file path for the given data object.
|
|
13
|
-
#
|
|
14
|
-
# @param data_object [SleepingKingStudios::Docs::Data::Base] the data object
|
|
15
|
-
# for which the file is generated.
|
|
16
|
-
# @param data_type [String, Symbol] the type of data file to generate.
|
|
17
|
-
#
|
|
18
|
-
# @return [String] the qualified path to the generated file.
|
|
19
|
-
def file_path(data_object:, data_type: nil)
|
|
20
|
-
data_type ||= data_object_type(data_object:)
|
|
21
|
-
|
|
22
|
-
File.join(dir_path(data_type), "#{data_object.data_path}.yml")
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
private
|
|
26
|
-
|
|
27
|
-
def dir_path(data_type)
|
|
28
|
-
scope = "_#{tools.string_tools.pluralize(data_type.to_s)}"
|
|
29
|
-
|
|
30
|
-
if version
|
|
31
|
-
File.join(docs_path, scope, "version--#{version}")
|
|
32
|
-
else
|
|
33
|
-
File.join(docs_path, scope)
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
def file_data(data_object:)
|
|
38
|
-
data_object
|
|
39
|
-
.as_json
|
|
40
|
-
.merge('version' => version_string)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
def process(data_object:, data_type: nil)
|
|
44
|
-
data = file_data(data_object:)
|
|
45
|
-
data_type ||= data_object_type(data_object:)
|
|
46
|
-
|
|
47
|
-
return success(nil) if dry_run?
|
|
48
|
-
|
|
49
|
-
write_command.call(
|
|
50
|
-
contents: YAML.dump(data),
|
|
51
|
-
file_path: file_path(
|
|
52
|
-
data_object:,
|
|
53
|
-
data_type:
|
|
54
|
-
)
|
|
55
|
-
)
|
|
56
|
-
end
|
|
57
|
-
|
|
58
|
-
def tools
|
|
59
|
-
SleepingKingStudios::Tools::Toolbelt.instance
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
def write_command
|
|
63
|
-
@write_command ||=
|
|
64
|
-
SleepingKingStudios::Docs::Commands::WriteFile
|
|
65
|
-
.new(force: force?)
|
|
66
|
-
end
|
|
67
|
-
end
|
|
68
|
-
end
|