Class: Inch::Language::Elixir::Provider::Reader::Object::Base
Abstract
- Inherits:
-
Object
- Object
- Inch::Language::Elixir::Provider::Reader::Object::Base
show all
- Defined in:
- lib/inch/language/elixir/provider/reader/object/base.rb
Overview
Constant Summary
collapse
- HIDDEN_TYPES =
%w(defcallback defmacro exception impl)
Instance Attribute Summary collapse
Instance Method Summary
collapse
Constructor Details
#initialize(hash) ⇒ Base
Returns a new instance of Base.
12
13
14
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 12
def initialize(hash)
@hash = hash
end
|
Instance Attribute Details
#children_fullnames ⇒ Object
33
34
35
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 33
def children_fullnames
@children_fullnames ||= []
end
|
Instance Method Details
#aliased_object_fullname ⇒ Object
49
50
51
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 49
def aliased_object_fullname
nil
end
|
#aliases_fullnames ⇒ Object
53
54
55
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 53
def aliases_fullnames
nil
end
|
#api_tag? ⇒ Boolean
45
46
47
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 45
def api_tag?
nil
end
|
#attributes ⇒ Object
57
58
59
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 57
def attributes
[]
end
|
#bang_name? ⇒ Boolean
61
62
63
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 61
def bang_name?
false
end
|
#constant? ⇒ Boolean
65
66
67
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 65
def constant?
false end
|
#constructor? ⇒ Boolean
69
70
71
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 69
def constructor?
false
end
|
73
74
75
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 73
def depth
fullname.split('.').size
end
|
78
79
80
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 78
def docstring
@docstring ||= Docstring.new(original_docstring)
end
|
28
29
30
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 28
def filename
nil
end
|
24
25
26
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 24
def files
[]
end
|
20
21
22
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 20
def fullname
fail NotImplementedError
end
|
#getter? ⇒ Boolean
82
83
84
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 82
def getter?
name =~ /^get_/ end
|
#has_children? ⇒ Boolean
86
87
88
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 86
def has_children?
!children_fullnames.empty?
end
|
#has_code_example? ⇒ Boolean
90
91
92
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 90
def has_code_example?
docstring.code_examples.size > 0
end
|
#has_doc? ⇒ Boolean
94
95
96
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 94
def has_doc?
!undocumented?
end
|
#has_multiple_code_examples? ⇒ Boolean
98
99
100
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 98
def has_multiple_code_examples?
docstring.code_examples.size > 1
end
|
102
103
104
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 102
def has_unconsidered_tags?
false end
|
#in_root? ⇒ Boolean
172
173
174
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 172
def in_root?
depth == 1
end
|
#method? ⇒ Boolean
106
107
108
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 106
def method?
false
end
|
16
17
18
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 16
def name
@hash['name']
end
|
#namespace? ⇒ Boolean
116
117
118
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 116
def namespace?
false
end
|
#nodoc? ⇒ Boolean
111
112
113
114
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 111
def nodoc?
@hash['doc'] == false ||
HIDDEN_TYPES.include?(@hash['type'])
end
|
#original_docstring ⇒ Object
120
121
122
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 120
def original_docstring
@hash['doc']
end
|
#overridden? ⇒ Boolean
124
125
126
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 124
def overridden?
false end
|
#overridden_method_fullname ⇒ Object
128
129
130
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 128
def overridden_method_fullname
nil end
|
#parameters ⇒ Object
132
133
134
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 132
def parameters
[]
end
|
#parent_fullname ⇒ Object
37
38
39
40
41
42
43
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 37
def parent_fullname
if depth == 1
nil
else
fullname.split('.')[0...-1].join('.')
end
end
|
#private? ⇒ Boolean
136
137
138
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 136
def private?
false
end
|
#protected? ⇒ Boolean
148
149
150
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 148
def protected?
false
end
|
#public? ⇒ Boolean
152
153
154
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 152
def public?
true
end
|
#questioning_name? ⇒ Boolean
156
157
158
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 156
def questioning_name?
fullname =~ /\?$/
end
|
#return_described? ⇒ Boolean
160
161
162
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 160
def return_described?
false end
|
#return_mentioned? ⇒ Boolean
164
165
166
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 164
def return_mentioned?
false end
|
#return_typed? ⇒ Boolean
168
169
170
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 168
def return_typed?
false end
|
#setter? ⇒ Boolean
176
177
178
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 176
def setter?
name =~ /^set_/ end
|
180
181
182
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 180
def source
nil
end
|
#tagged_as_internal_api? ⇒ Boolean
140
141
142
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 140
def tagged_as_internal_api?
false
end
|
#tagged_as_private? ⇒ Boolean
144
145
146
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 144
def tagged_as_private?
nodoc?
end
|
#unconsidered_tag_count ⇒ Object
184
185
186
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 184
def unconsidered_tag_count
0
end
|
#undocumented? ⇒ Boolean
188
189
190
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 188
def undocumented?
original_docstring.nil? || original_docstring.to_s.strip.empty?
end
|
#visibility ⇒ Object
192
193
194
|
# File 'lib/inch/language/elixir/provider/reader/object/base.rb', line 192
def visibility
:public
end
|