File tree Expand file tree Collapse file tree 6 files changed +654
-4
lines changed Expand file tree Collapse file tree 6 files changed +654
-4
lines changed Original file line number Diff line number Diff line change @@ -59,9 +59,18 @@ function extractThis(path) {
59
59
identifiers . push ( scope . path . parentPath . parentPath . node . id . name , 'prototype' ) ;
60
60
}
61
61
62
- if ( n . isFunctionDeclaration ( scope . block ) ||
63
- n . isFunctionExpression ( scope . block ) ) {
64
- identifiers . push ( scope . block . id . name , 'prototype' ) ;
62
+ if ( n . isFunctionDeclaration ( scope . block ) ) {
63
+ identifiers . push ( scope . block . id . name , 'prototype' ) ;
64
+ } else if ( n . isFunctionExpression ( scope . block ) ) {
65
+ if ( n . isVariableDeclarator ( scope . path . parentPath ) ) {
66
+ /** var Bar = function(foo) { this.foo = foo; }; */
67
+ identifiers = identifiers
68
+ . concat ( scope . path . parentPath . get ( 'id' ) . node . name ) . concat ( 'prototype' ) ;
69
+ } else if ( n . isAssignmentExpression ( scope . path . parentPath ) ) {
70
+ /** this.Bar = function(foo) { this.foo = foo; }; */
71
+ identifiers = identifiers
72
+ . concat ( extractIdentifiers ( scope . path . parentPath . get ( 'left' ) ) ) . concat ( 'prototype' ) ;
73
+ }
65
74
}
66
75
}
67
76
} ) ;
Original file line number Diff line number Diff line change
1
+ /** @module bookshelf */
2
+
3
+ /** @class */
4
+ var Book = function ( title ) {
5
+ /** The title of the book. */
6
+ this . title = title ;
7
+ }
8
+
9
+ /** @class */
10
+ this . BookShelf = function ( title ) {
11
+ /** The title of the bookshelf. */
12
+ this . title = title ;
13
+ }
Original file line number Diff line number Diff line change
1
+ [
2
+ {
3
+ "description" : " " ,
4
+ "tags" : [
5
+ {
6
+ "title" : " module" ,
7
+ "description" : null ,
8
+ "lineNumber" : 0 ,
9
+ "type" : null ,
10
+ "name" : " bookshelf"
11
+ }
12
+ ],
13
+ "loc" : {
14
+ "start" : {
15
+ "line" : 1 ,
16
+ "column" : 0
17
+ },
18
+ "end" : {
19
+ "line" : 1 ,
20
+ "column" : 24
21
+ }
22
+ },
23
+ "context" : {
24
+ "loc" : {
25
+ "start" : {
26
+ "line" : 4 ,
27
+ "column" : 0
28
+ },
29
+ "end" : {
30
+ "line" : 7 ,
31
+ "column" : 1
32
+ }
33
+ }
34
+ },
35
+ "errors" : [],
36
+ "kind" : " module" ,
37
+ "name" : " bookshelf" ,
38
+ "params" : [
39
+ {
40
+ "title" : " param" ,
41
+ "name" : " title" ,
42
+ "lineNumber" : 4
43
+ }
44
+ ],
45
+ "members" : {
46
+ "instance" : [],
47
+ "static" : []
48
+ },
49
+ "path" : [
50
+ {
51
+ "name" : " bookshelf" ,
52
+ "kind" : " module"
53
+ }
54
+ ],
55
+ "namespace" : " bookshelf"
56
+ },
57
+ {
58
+ "description" : " " ,
59
+ "tags" : [
60
+ {
61
+ "title" : " class" ,
62
+ "description" : null ,
63
+ "lineNumber" : 0 ,
64
+ "name" : null
65
+ }
66
+ ],
67
+ "loc" : {
68
+ "start" : {
69
+ "line" : 3 ,
70
+ "column" : 0
71
+ },
72
+ "end" : {
73
+ "line" : 3 ,
74
+ "column" : 13
75
+ }
76
+ },
77
+ "context" : {
78
+ "loc" : {
79
+ "start" : {
80
+ "line" : 4 ,
81
+ "column" : 0
82
+ },
83
+ "end" : {
84
+ "line" : 7 ,
85
+ "column" : 1
86
+ }
87
+ }
88
+ },
89
+ "errors" : [],
90
+ "kind" : " class" ,
91
+ "name" : " Book" ,
92
+ "params" : [
93
+ {
94
+ "title" : " param" ,
95
+ "name" : " title" ,
96
+ "lineNumber" : 4
97
+ }
98
+ ],
99
+ "members" : {
100
+ "instance" : [
101
+ {
102
+ "description" : {
103
+ "type" : " root" ,
104
+ "children" : [
105
+ {
106
+ "type" : " paragraph" ,
107
+ "children" : [
108
+ {
109
+ "type" : " text" ,
110
+ "value" : " The title of the book." ,
111
+ "position" : {
112
+ "start" : {
113
+ "line" : 1 ,
114
+ "column" : 1 ,
115
+ "offset" : 0
116
+ },
117
+ "end" : {
118
+ "line" : 1 ,
119
+ "column" : 23 ,
120
+ "offset" : 22
121
+ },
122
+ "indent" : []
123
+ }
124
+ }
125
+ ],
126
+ "position" : {
127
+ "start" : {
128
+ "line" : 1 ,
129
+ "column" : 1 ,
130
+ "offset" : 0
131
+ },
132
+ "end" : {
133
+ "line" : 1 ,
134
+ "column" : 23 ,
135
+ "offset" : 22
136
+ },
137
+ "indent" : []
138
+ }
139
+ }
140
+ ],
141
+ "position" : {
142
+ "start" : {
143
+ "line" : 1 ,
144
+ "column" : 1 ,
145
+ "offset" : 0
146
+ },
147
+ "end" : {
148
+ "line" : 1 ,
149
+ "column" : 23 ,
150
+ "offset" : 22
151
+ }
152
+ }
153
+ },
154
+ "tags" : [],
155
+ "loc" : {
156
+ "start" : {
157
+ "line" : 5 ,
158
+ "column" : 4
159
+ },
160
+ "end" : {
161
+ "line" : 5 ,
162
+ "column" : 33
163
+ }
164
+ },
165
+ "context" : {
166
+ "loc" : {
167
+ "start" : {
168
+ "line" : 6 ,
169
+ "column" : 3
170
+ },
171
+ "end" : {
172
+ "line" : 6 ,
173
+ "column" : 22
174
+ }
175
+ }
176
+ },
177
+ "errors" : [],
178
+ "name" : " title" ,
179
+ "memberof" : " Book" ,
180
+ "scope" : " instance" ,
181
+ "members" : {
182
+ "instance" : [],
183
+ "static" : []
184
+ },
185
+ "path" : [
186
+ {
187
+ "name" : " Book" ,
188
+ "kind" : " class"
189
+ },
190
+ {
191
+ "name" : " title" ,
192
+ "scope" : " instance"
193
+ }
194
+ ],
195
+ "namespace" : " Book#title"
196
+ }
197
+ ],
198
+ "static" : [],
199
+ "events" : []
200
+ },
201
+ "path" : [
202
+ {
203
+ "name" : " Book" ,
204
+ "kind" : " class"
205
+ }
206
+ ],
207
+ "namespace" : " Book"
208
+ },
209
+ {
210
+ "description" : " " ,
211
+ "tags" : [
212
+ {
213
+ "title" : " class" ,
214
+ "description" : null ,
215
+ "lineNumber" : 0 ,
216
+ "name" : null
217
+ }
218
+ ],
219
+ "loc" : {
220
+ "start" : {
221
+ "line" : 9 ,
222
+ "column" : 0
223
+ },
224
+ "end" : {
225
+ "line" : 9 ,
226
+ "column" : 13
227
+ }
228
+ },
229
+ "context" : {
230
+ "loc" : {
231
+ "start" : {
232
+ "line" : 10 ,
233
+ "column" : 0
234
+ },
235
+ "end" : {
236
+ "line" : 13 ,
237
+ "column" : 1
238
+ }
239
+ }
240
+ },
241
+ "errors" : [],
242
+ "kind" : " class" ,
243
+ "name" : " BookShelf" ,
244
+ "params" : [
245
+ {
246
+ "title" : " param" ,
247
+ "name" : " title" ,
248
+ "lineNumber" : 10
249
+ }
250
+ ],
251
+ "members" : {
252
+ "instance" : [
253
+ {
254
+ "description" : {
255
+ "type" : " root" ,
256
+ "children" : [
257
+ {
258
+ "type" : " paragraph" ,
259
+ "children" : [
260
+ {
261
+ "type" : " text" ,
262
+ "value" : " The title of the bookshelf." ,
263
+ "position" : {
264
+ "start" : {
265
+ "line" : 1 ,
266
+ "column" : 1 ,
267
+ "offset" : 0
268
+ },
269
+ "end" : {
270
+ "line" : 1 ,
271
+ "column" : 28 ,
272
+ "offset" : 27
273
+ },
274
+ "indent" : []
275
+ }
276
+ }
277
+ ],
278
+ "position" : {
279
+ "start" : {
280
+ "line" : 1 ,
281
+ "column" : 1 ,
282
+ "offset" : 0
283
+ },
284
+ "end" : {
285
+ "line" : 1 ,
286
+ "column" : 28 ,
287
+ "offset" : 27
288
+ },
289
+ "indent" : []
290
+ }
291
+ }
292
+ ],
293
+ "position" : {
294
+ "start" : {
295
+ "line" : 1 ,
296
+ "column" : 1 ,
297
+ "offset" : 0
298
+ },
299
+ "end" : {
300
+ "line" : 1 ,
301
+ "column" : 28 ,
302
+ "offset" : 27
303
+ }
304
+ }
305
+ },
306
+ "tags" : [],
307
+ "loc" : {
308
+ "start" : {
309
+ "line" : 11 ,
310
+ "column" : 4
311
+ },
312
+ "end" : {
313
+ "line" : 11 ,
314
+ "column" : 38
315
+ }
316
+ },
317
+ "context" : {
318
+ "loc" : {
319
+ "start" : {
320
+ "line" : 12 ,
321
+ "column" : 3
322
+ },
323
+ "end" : {
324
+ "line" : 12 ,
325
+ "column" : 22
326
+ }
327
+ }
328
+ },
329
+ "errors" : [],
330
+ "name" : " title" ,
331
+ "memberof" : " BookShelf" ,
332
+ "scope" : " instance" ,
333
+ "members" : {
334
+ "instance" : [],
335
+ "static" : []
336
+ },
337
+ "path" : [
338
+ {
339
+ "name" : " BookShelf" ,
340
+ "kind" : " class"
341
+ },
342
+ {
343
+ "name" : " title" ,
344
+ "scope" : " instance"
345
+ }
346
+ ],
347
+ "namespace" : " BookShelf#title"
348
+ }
349
+ ],
350
+ "static" : [],
351
+ "events" : []
352
+ },
353
+ "path" : [
354
+ {
355
+ "name" : " BookShelf" ,
356
+ "kind" : " class"
357
+ }
358
+ ],
359
+ "namespace" : " BookShelf"
360
+ }
361
+ ]
You can’t perform that action at this time.
0 commit comments