yard-sketchup 1.1.4 → 1.1.5
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/Gemfile +15 -15
- data/lib/yard-sketchup.rb +36 -36
- data/lib/yard-sketchup/patches/c_base_handler.rb +52 -52
- data/lib/yard-sketchup/stubs/autoload.rb +134 -134
- data/lib/yard-sketchup/templates/changelog/fulldoc/text/setup.rb +44 -44
- data/lib/yard-sketchup/templates/coverage/fulldoc/text/setup.rb +41 -41
- data/lib/yard-sketchup/templates/default/fulldoc/html/css/rubyapi.css +10 -10
- data/lib/yard-sketchup/templates/default/fulldoc/html/css/sketchup.css +120 -120
- data/lib/yard-sketchup/templates/default/fulldoc/html/full_list_object_types.erb +1 -1
- data/lib/yard-sketchup/templates/default/fulldoc/html/js/sketchup.js +37 -37
- data/lib/yard-sketchup/templates/default/fulldoc/html/setup.rb +66 -66
- data/lib/yard-sketchup/templates/default/layout/html/embed_meta.erb +78 -78
- data/lib/yard-sketchup/templates/default/layout/html/footer.erb +4 -4
- data/lib/yard-sketchup/templates/default/layout/html/headers.erb +15 -15
- data/lib/yard-sketchup/templates/default/layout/html/layout.erb +55 -55
- data/lib/yard-sketchup/templates/default/layout/html/navbar.erb +36 -36
- data/lib/yard-sketchup/templates/default/layout/html/setup.rb +19 -19
- data/lib/yard-sketchup/templates/default/method_details/html/method_signature.erb +25 -25
- data/lib/yard-sketchup/templates/default/method_details/setup.rb +11 -11
- data/lib/yard-sketchup/templates/default/module/html/box_info.erb +37 -37
- data/lib/yard-sketchup/templates/default/module/html/constant_summary.erb +17 -17
- data/lib/yard-sketchup/templates/default/module/html/method_summary.erb +18 -18
- data/lib/yard-sketchup/templates/stubs/fulldoc/text/setup.rb +361 -357
- data/lib/yard-sketchup/templates/versions/fulldoc/text/setup.rb +25 -25
- data/lib/yard-sketchup/version.rb +3 -3
- data/yard-sketchup.gemspec +25 -25
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 322aa83489a867feda107743e742d750432af681826c761d899a0643769db2c4
|
4
|
+
data.tar.gz: fa44b83825930518647a22096267b2e1ff0762b1d1dc81c0d453953a33eb3a68
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d2f020b3d7c3b1e361987f7aae39f35e88e928e943b723eff431bb7d33002adbe94633986d4547de9e2178a67cc56a1bfceec9a96b436fe26ad72f068dc879bd
|
7
|
+
data.tar.gz: 7b83c9aaf3f1b6abf963e85b3d25ff5b2a1fc8033227003e25201c742afb504335a9fea9eadeae8e0820dd26436fe178f063fad8cb8f09f4c252ecb207569a8a
|
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
|
+
|
data/lib/yard-sketchup.rb
CHANGED
@@ -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
|