yard-sketchup 1.1.5 → 1.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +15 -15
  3. data/lib/yard-sketchup.rb +36 -36
  4. data/lib/yard-sketchup/patches/c_base_handler.rb +52 -52
  5. data/lib/yard-sketchup/stubs/autoload.rb +134 -134
  6. data/lib/yard-sketchup/templates/changelog/fulldoc/text/setup.rb +44 -44
  7. data/lib/yard-sketchup/templates/coverage/fulldoc/text/setup.rb +41 -41
  8. data/lib/yard-sketchup/templates/default/fulldoc/html/css/rubyapi.css +10 -10
  9. data/lib/yard-sketchup/templates/default/fulldoc/html/css/sketchup.css +120 -120
  10. data/lib/yard-sketchup/templates/default/fulldoc/html/full_list_object_types.erb +1 -1
  11. data/lib/yard-sketchup/templates/default/fulldoc/html/js/jquery-migrate.js +2 -0
  12. data/lib/yard-sketchup/templates/default/fulldoc/html/js/jquery.js +5 -0
  13. data/lib/yard-sketchup/templates/default/fulldoc/html/js/sketchup.js +37 -37
  14. data/lib/yard-sketchup/templates/default/fulldoc/html/setup.rb +66 -66
  15. data/lib/yard-sketchup/templates/default/layout/html/embed_meta.erb +78 -78
  16. data/lib/yard-sketchup/templates/default/layout/html/footer.erb +4 -4
  17. data/lib/yard-sketchup/templates/default/layout/html/headers.erb +15 -15
  18. data/lib/yard-sketchup/templates/default/layout/html/layout.erb +55 -55
  19. data/lib/yard-sketchup/templates/default/layout/html/navbar.erb +36 -36
  20. data/lib/yard-sketchup/templates/default/layout/html/setup.rb +25 -19
  21. data/lib/yard-sketchup/templates/default/method_details/html/method_signature.erb +25 -25
  22. data/lib/yard-sketchup/templates/default/method_details/setup.rb +11 -11
  23. data/lib/yard-sketchup/templates/default/module/html/box_info.erb +37 -37
  24. data/lib/yard-sketchup/templates/default/module/html/constant_summary.erb +17 -17
  25. data/lib/yard-sketchup/templates/default/module/html/method_summary.erb +18 -18
  26. data/lib/yard-sketchup/templates/stubs/fulldoc/text/setup.rb +361 -361
  27. data/lib/yard-sketchup/templates/versions/fulldoc/text/setup.rb +25 -25
  28. data/lib/yard-sketchup/version.rb +3 -3
  29. data/yard-sketchup.gemspec +25 -25
  30. metadata +4 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 322aa83489a867feda107743e742d750432af681826c761d899a0643769db2c4
4
- data.tar.gz: fa44b83825930518647a22096267b2e1ff0762b1d1dc81c0d453953a33eb3a68
3
+ metadata.gz: 5bfcac34ae30da9ec0cf409af0c5c0328467402059a062891e6f6dc79a57abcb
4
+ data.tar.gz: 7476ce0de49dd73c0762c6c2d8feb88d3ad78d76b66d160e5eb9694d2c5b2ed2
5
5
  SHA512:
6
- metadata.gz: d2f020b3d7c3b1e361987f7aae39f35e88e928e943b723eff431bb7d33002adbe94633986d4547de9e2178a67cc56a1bfceec9a96b436fe26ad72f068dc879bd
7
- data.tar.gz: 7b83c9aaf3f1b6abf963e85b3d25ff5b2a1fc8033227003e25201c742afb504335a9fea9eadeae8e0820dd26436fe178f063fad8cb8f09f4c252ecb207569a8a
6
+ metadata.gz: f7748b919fedb95aab4e6dac477629e6d822a3fd4aba86b9ccff21d23f45a960cd8ebe0d5491274fea1a6237fdd26ff48f3cf4d8ce45503b97e7a6dedfd439e5
7
+ data.tar.gz: 93a952f7a80fa55ae8ce76e0b6e17c44696266d9f8f40a37348878802277f089190cfd3caf6e96f66346b8a243e745344f23b8b4fc5e786f27867b1ebc451443
data/Gemfile CHANGED
@@ -1,15 +1,15 @@
1
- # frozen_string_literal: true
2
-
3
- source 'https://rubygems.org'
4
-
5
- gemspec
6
-
7
- gem 'rake', '~> 12.0', require: false
8
-
9
- group :tools do
10
- gem 'colorize', '~> 0.0', require: false
11
- gem 'git', '~> 1.3', require: false
12
- gem 'git_diff_parser', '~> 2.3', require: false
13
- gem 'thor', '~> 0.19', require: false
14
- end
15
-
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
6
+
7
+ gem 'rake', '~> 12.0', require: false
8
+
9
+ group :tools do
10
+ gem 'colorize', '~> 0.0', require: false
11
+ gem 'git', '~> 1.3', require: false
12
+ gem 'git_diff_parser', '~> 2.3', require: false
13
+ gem 'thor', '~> 0.19', require: false
14
+ end
15
+
@@ -1,36 +1,36 @@
1
- require 'yard'
2
- require 'yard-sketchup/version'
3
- require 'yard-sketchup/stubs/autoload'
4
- require 'yard-sketchup/yard/logger'
5
- require 'yard-sketchup/yard/handlers/class_constants'
6
- require 'yard-sketchup/yard/handlers/class_enum_constants'
7
- require 'yard-sketchup/yard/handlers/global_constants'
8
- require 'yard-sketchup/patches/c_base_handler'
9
-
10
- module SketchUpYARD
11
-
12
- def self.init
13
- # https://github.com/burtlo/yard-cucumber/blob/master/lib/yard-cucumber.rb
14
- # This registered template works for yardoc
15
- # YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/templates'
16
- # The following static paths and templates are for yard server
17
- # YARD::Server.register_static_path File.dirname(__FILE__) + "/templates/default/fulldoc/html"
18
-
19
- YARD::Templates::Engine.register_template_path self.templates_path
20
-
21
- # https://www.rubydoc.info/gems/yard/file/docs/TagsArch.md#Adding_Custom_Tags
22
- # https://github.com/lsegal/yard/issues/1227
23
- # Custom visible tags:
24
- tags = [
25
- YARD::Tags::Library.define_tag('Known Bugs', :bug),
26
- ]
27
- YARD::Tags::Library.visible_tags |= tags
28
- end
29
-
30
- def self.templates_path
31
- File.join(__dir__, 'yard-sketchup', 'templates')
32
- end
33
-
34
- end
35
-
36
- SketchUpYARD.init
1
+ require 'yard'
2
+ require 'yard-sketchup/version'
3
+ require 'yard-sketchup/stubs/autoload'
4
+ require 'yard-sketchup/yard/logger'
5
+ require 'yard-sketchup/yard/handlers/class_constants'
6
+ require 'yard-sketchup/yard/handlers/class_enum_constants'
7
+ require 'yard-sketchup/yard/handlers/global_constants'
8
+ require 'yard-sketchup/patches/c_base_handler'
9
+
10
+ module SketchUpYARD
11
+
12
+ def self.init
13
+ # https://github.com/burtlo/yard-cucumber/blob/master/lib/yard-cucumber.rb
14
+ # This registered template works for yardoc
15
+ # YARD::Templates::Engine.register_template_path File.dirname(__FILE__) + '/templates'
16
+ # The following static paths and templates are for yard server
17
+ # YARD::Server.register_static_path File.dirname(__FILE__) + "/templates/default/fulldoc/html"
18
+
19
+ YARD::Templates::Engine.register_template_path self.templates_path
20
+
21
+ # https://www.rubydoc.info/gems/yard/file/docs/TagsArch.md#Adding_Custom_Tags
22
+ # https://github.com/lsegal/yard/issues/1227
23
+ # Custom visible tags:
24
+ tags = [
25
+ YARD::Tags::Library.define_tag('Known Bugs', :bug),
26
+ ]
27
+ YARD::Tags::Library.visible_tags |= tags
28
+ end
29
+
30
+ def self.templates_path
31
+ File.join(__dir__, 'yard-sketchup', 'templates')
32
+ end
33
+
34
+ end
35
+
36
+ SketchUpYARD.init
@@ -1,52 +1,52 @@
1
- # frozen_string_literal: true
2
- module YARD
3
- module Handlers
4
- module C
5
- class Base < Handlers::Base
6
-
7
- # Temporary workaround until a proper fix can be applied to YARD master.
8
- alias_method :namespace_for_variable_original, :namespace_for_variable
9
- def namespace_for_variable(var)
10
- patch_namespace_for_variable(var) ||
11
- namespace_for_variable_original(var)
12
- end
13
-
14
- private
15
-
16
- def patch_namespace_for_variable(var)
17
- name = PATCH_ERROR_NAME[var]
18
- # $stderr.puts "Mapped #{var} to #{name}" if name
19
- name.nil? ? nil : P(name)
20
- end
21
-
22
- # Generated by update_error_map.rb (Copy+past results)
23
- PATCH_ERROR_NAME = {
24
- 'rb_eException' => 'Exception',
25
- 'rb_eSystemExit' => 'SystemExit',
26
- 'rb_eFatal' => 'fatal',
27
- 'rb_eSignal' => 'SignalException',
28
- 'rb_eInterrupt' => 'Interrupt',
29
- 'rb_eStandardError' => 'StandardError',
30
- 'rb_eTypeError' => 'TypeError',
31
- 'rb_eArgError' => 'ArgumentError',
32
- 'rb_eIndexError' => 'IndexError',
33
- 'rb_eKeyError' => 'KeyError',
34
- 'rb_eRangeError' => 'RangeError',
35
- 'rb_eScriptError' => 'ScriptError',
36
- 'rb_eSyntaxError' => 'SyntaxError',
37
- 'rb_eLoadError' => 'LoadError',
38
- 'rb_eNotImpError' => 'NotImplementedError',
39
- 'rb_eNameError' => 'NameError',
40
- 'rb_eNoMethodError' => 'NoMethodError',
41
- 'rb_eRuntimeError' => 'RuntimeError',
42
- 'rb_eFrozenError' => 'FrozenError',
43
- 'rb_eSecurityError' => 'SecurityError',
44
- 'rb_eNoMemError' => 'NoMemoryError',
45
- 'rb_eEncodingError' => 'EncodingError',
46
- 'rb_eSystemCallError' => 'SystemCallError',
47
- }
48
-
49
- end
50
- end
51
- end
52
- end
1
+ # frozen_string_literal: true
2
+ module YARD
3
+ module Handlers
4
+ module C
5
+ class Base < Handlers::Base
6
+
7
+ # Temporary workaround until a proper fix can be applied to YARD master.
8
+ alias_method :namespace_for_variable_original, :namespace_for_variable
9
+ def namespace_for_variable(var)
10
+ patch_namespace_for_variable(var) ||
11
+ namespace_for_variable_original(var)
12
+ end
13
+
14
+ private
15
+
16
+ def patch_namespace_for_variable(var)
17
+ name = PATCH_ERROR_NAME[var]
18
+ # $stderr.puts "Mapped #{var} to #{name}" if name
19
+ name.nil? ? nil : P(name)
20
+ end
21
+
22
+ # Generated by update_error_map.rb (Copy+past results)
23
+ PATCH_ERROR_NAME = {
24
+ 'rb_eException' => 'Exception',
25
+ 'rb_eSystemExit' => 'SystemExit',
26
+ 'rb_eFatal' => 'fatal',
27
+ 'rb_eSignal' => 'SignalException',
28
+ 'rb_eInterrupt' => 'Interrupt',
29
+ 'rb_eStandardError' => 'StandardError',
30
+ 'rb_eTypeError' => 'TypeError',
31
+ 'rb_eArgError' => 'ArgumentError',
32
+ 'rb_eIndexError' => 'IndexError',
33
+ 'rb_eKeyError' => 'KeyError',
34
+ 'rb_eRangeError' => 'RangeError',
35
+ 'rb_eScriptError' => 'ScriptError',
36
+ 'rb_eSyntaxError' => 'SyntaxError',
37
+ 'rb_eLoadError' => 'LoadError',
38
+ 'rb_eNotImpError' => 'NotImplementedError',
39
+ 'rb_eNameError' => 'NameError',
40
+ 'rb_eNoMethodError' => 'NoMethodError',
41
+ 'rb_eRuntimeError' => 'RuntimeError',
42
+ 'rb_eFrozenError' => 'FrozenError',
43
+ 'rb_eSecurityError' => 'SecurityError',
44
+ 'rb_eNoMemError' => 'NoMemoryError',
45
+ 'rb_eEncodingError' => 'EncodingError',
46
+ 'rb_eSystemCallError' => 'SystemCallError',
47
+ }
48
+
49
+ end
50
+ end
51
+ end
52
+ end
@@ -1,134 +1,134 @@
1
- module SketchUpYARD
2
- module Stubs
3
- class AutoLoadGenerator
4
-
5
- # @param [YARD::CodeObject::Base] namespace_objects
6
- # @param [IO] out
7
- def generate(namespace_objects, out)
8
- dependencies = resolve_dependencies(namespace_objects)
9
- out.puts "# This file is auto-generated by the `thor stubs` command."
10
- required = Set.new
11
- # Top level is special case.
12
- top_level_path = File.join(sketchup_stubs_path, '_top_level.rb')
13
- out.puts "require '#{top_level_path}'"
14
- # The rest is resolved recursively.
15
- dependencies.each { |object|
16
- recurse_require(object, required, out)
17
- }
18
- end
19
-
20
- private
21
-
22
- class Node
23
-
24
- attr_reader :object
25
- attr_reader :dependencies
26
-
27
- def initialize(object)
28
- @object = object
29
- @dependencies = SortedSet.new
30
- end
31
-
32
- def root?
33
- @object.namespace.root?
34
- end
35
-
36
- def path
37
- @object.path
38
- end
39
-
40
- def namespace
41
- @object.namespace
42
- end
43
-
44
- def <<(object)
45
- @dependencies << object
46
- end
47
-
48
- def <=>(other)
49
- @object.path <=> other.path
50
- end
51
-
52
- def hash
53
- @object.path.hash
54
- end
55
-
56
- end
57
-
58
-
59
- class NodeFactory
60
-
61
- def initialize
62
- @dependencies = {}
63
- end
64
-
65
- def node(yard_object)
66
- item = @dependencies[yard_object.path]
67
- return item if item
68
- item = Node.new(yard_object)
69
- @dependencies[yard_object.path] = item
70
- item
71
- end
72
-
73
- end
74
-
75
-
76
- def resolve_dependencies(yard_objects)
77
- factory = NodeFactory.new
78
- dependencies = SortedSet.new
79
-
80
- yard_objects.each { |yard_object|
81
- object = factory.node(yard_object)
82
-
83
- if yard_object.type == :class && yard_object.superclass.name != :Object
84
- object << factory.node(yard_object.superclass)
85
- end
86
-
87
- unless yard_object.namespace.path.empty?
88
- object << factory.node(yard_object.namespace)
89
- end
90
-
91
- dependencies << object
92
- }
93
- dependencies
94
- end
95
-
96
- def print_dependencies(object, indent = 0)
97
- indent_space = ' ' * indent
98
- puts "#{indent_space}#{object.path}"
99
- object.dependencies.each { |dependency|
100
- print_dependencies(dependency, indent + 1)
101
- }
102
- end
103
-
104
- def sketchup_stubs_path
105
- File.join('sketchup-api-stubs', 'stubs')
106
- end
107
-
108
- def stub_filename(object)
109
- basename = object.path.gsub('::', '/')
110
- basename = '_top_level' if basename.empty?
111
- File.join(sketchup_stubs_path, "#{basename}.rb")
112
- end
113
-
114
- def recurse_require(object, required, out, indent = 0)
115
- return if required.include?(object.path)
116
- # If a class inherit from a core Ruby class we might get a Proxy code
117
- # object here. We don't generate stubs for those and thus we don't want
118
- # to create a require for them either.
119
- return if object.object.is_a?(YARD::CodeObjects::Proxy)
120
- # First require the dependencies.
121
- object.dependencies.each { |dependency|
122
- recurse_require(dependency, required, out, indent + 1)
123
- }
124
- # Then we're good to require this object.
125
- require_path = stub_filename(object)
126
- # indent_space = ' ' * indent
127
- # out.puts "#{indent_space}require '#{require_path}'"
128
- out.puts "require '#{require_path}'"
129
- required << object.path
130
- end
131
-
132
- end
133
- end
134
- end
1
+ module SketchUpYARD
2
+ module Stubs
3
+ class AutoLoadGenerator
4
+
5
+ # @param [YARD::CodeObject::Base] namespace_objects
6
+ # @param [IO] out
7
+ def generate(namespace_objects, out)
8
+ dependencies = resolve_dependencies(namespace_objects)
9
+ out.puts "# This file is auto-generated by the `thor stubs` command."
10
+ required = Set.new
11
+ # Top level is special case.
12
+ top_level_path = File.join(sketchup_stubs_path, '_top_level.rb')
13
+ out.puts "require '#{top_level_path}'"
14
+ # The rest is resolved recursively.
15
+ dependencies.each { |object|
16
+ recurse_require(object, required, out)
17
+ }
18
+ end
19
+
20
+ private
21
+
22
+ class Node
23
+
24
+ attr_reader :object
25
+ attr_reader :dependencies
26
+
27
+ def initialize(object)
28
+ @object = object
29
+ @dependencies = SortedSet.new
30
+ end
31
+
32
+ def root?
33
+ @object.namespace.root?
34
+ end
35
+
36
+ def path
37
+ @object.path
38
+ end
39
+
40
+ def namespace
41
+ @object.namespace
42
+ end
43
+
44
+ def <<(object)
45
+ @dependencies << object
46
+ end
47
+
48
+ def <=>(other)
49
+ @object.path <=> other.path
50
+ end
51
+
52
+ def hash
53
+ @object.path.hash
54
+ end
55
+
56
+ end
57
+
58
+
59
+ class NodeFactory
60
+
61
+ def initialize
62
+ @dependencies = {}
63
+ end
64
+
65
+ def node(yard_object)
66
+ item = @dependencies[yard_object.path]
67
+ return item if item
68
+ item = Node.new(yard_object)
69
+ @dependencies[yard_object.path] = item
70
+ item
71
+ end
72
+
73
+ end
74
+
75
+
76
+ def resolve_dependencies(yard_objects)
77
+ factory = NodeFactory.new
78
+ dependencies = SortedSet.new
79
+
80
+ yard_objects.each { |yard_object|
81
+ object = factory.node(yard_object)
82
+
83
+ if yard_object.type == :class && yard_object.superclass.name != :Object
84
+ object << factory.node(yard_object.superclass)
85
+ end
86
+
87
+ unless yard_object.namespace.path.empty?
88
+ object << factory.node(yard_object.namespace)
89
+ end
90
+
91
+ dependencies << object
92
+ }
93
+ dependencies
94
+ end
95
+
96
+ def print_dependencies(object, indent = 0)
97
+ indent_space = ' ' * indent
98
+ puts "#{indent_space}#{object.path}"
99
+ object.dependencies.each { |dependency|
100
+ print_dependencies(dependency, indent + 1)
101
+ }
102
+ end
103
+
104
+ def sketchup_stubs_path
105
+ File.join('sketchup-api-stubs', 'stubs')
106
+ end
107
+
108
+ def stub_filename(object)
109
+ basename = object.path.gsub('::', '/')
110
+ basename = '_top_level' if basename.empty?
111
+ File.join(sketchup_stubs_path, "#{basename}.rb")
112
+ end
113
+
114
+ def recurse_require(object, required, out, indent = 0)
115
+ return if required.include?(object.path)
116
+ # If a class inherit from a core Ruby class we might get a Proxy code
117
+ # object here. We don't generate stubs for those and thus we don't want
118
+ # to create a require for them either.
119
+ return if object.object.is_a?(YARD::CodeObjects::Proxy)
120
+ # First require the dependencies.
121
+ object.dependencies.each { |dependency|
122
+ recurse_require(dependency, required, out, indent + 1)
123
+ }
124
+ # Then we're good to require this object.
125
+ require_path = stub_filename(object)
126
+ # indent_space = ' ' * indent
127
+ # out.puts "#{indent_space}require '#{require_path}'"
128
+ out.puts "require '#{require_path}'"
129
+ required << object.path
130
+ end
131
+
132
+ end
133
+ end
134
+ end