Skip to content

Fix very slow jsdoc search in chained special assignments #23115

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 4, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/compiler/utilities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1807,7 +1807,6 @@ namespace ts {
if (parent &&
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of checking if parent is defined over and over again, maybe you should bail out if parent isn't defined?

(parent.kind === SyntaxKind.PropertyAssignment ||
parent.kind === SyntaxKind.PropertyDeclaration ||
isBinaryExpression(parent) && getSpecialPropertyAssignmentKind(parent) !== SpecialPropertyAssignmentKind.None ||
getNestedModuleDeclaration(parent))) {
getJSDocCommentsAndTagsWorker(parent);
}
Expand All @@ -1826,6 +1825,7 @@ namespace ts {
getJSDocCommentsAndTagsWorker(parent.parent.parent);
}
if (isBinaryExpression(node) && getSpecialPropertyAssignmentKind(node) !== SpecialPropertyAssignmentKind.None ||
parent && isBinaryExpression(parent) && getSpecialPropertyAssignmentKind(parent) !== SpecialPropertyAssignmentKind.None ||
node.kind === SyntaxKind.PropertyAccessExpression && node.parent && node.parent.kind === SyntaxKind.ExpressionStatement) {
getJSDocCommentsAndTagsWorker(parent);
}
Expand Down
301 changes: 301 additions & 0 deletions tests/baselines/reference/jsdocTypeFromChainedAssignment3.symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,301 @@
=== tests/cases/conformance/jsdoc/a.js ===
exports.wrapSync = exports.selectSeries = exports.selectLimit = exports.select = exports.foldr = exports.foldl = exports.inject = exports.forEachOfLimit = exports.forEachOfSeries = exports.forEachOf = exports.forEachLimit = exports.forEachSeries = exports.forEach = exports.findSeries = exports.findLimit = exports.find = exports.anySeries = exports.anyLimit = exports.any = exports.allSeries = exports.allLimit = exports.all = exports.whilst = exports.waterfall = exports.until = exports.unmemoize = exports.tryEach = exports.transform = exports.timesSeries = exports.timesLimit = exports.times = exports.timeout = exports.sortBy = exports.someSeries = exports.someLimit = exports.some = exports.setImmediate = exports.series = exports.seq = exports.retryable = exports.retry = exports.rejectSeries = exports.rejectLimit = exports.reject = exports.reflectAll = exports.reflect = exports.reduceRight = exports.reduce = exports.race = exports.queue = exports.priorityQueue = exports.parallelLimit = exports.parallel = exports.nextTick = exports.memoize = exports.mapValuesSeries = exports.mapValuesLimit = exports.mapValues = exports.mapSeries = exports.mapLimit = exports.map = exports.log = exports.groupBySeries = exports.groupByLimit = exports.groupBy = exports.forever = exports.filterSeries = exports.filterLimit = exports.filter = exports.everySeries = exports.everyLimit = exports.every = exports.ensureAsync = exports.eachSeries = exports.eachOfSeries = exports.eachOfLimit = exports.eachOf = exports.eachLimit = exports.each = exports.during = exports.doWhilst = exports.doUntil = exports.doDuring = exports.dir = exports.detectSeries = exports.detectLimit = exports.detect = exports.constant = exports.concatSeries = exports.concatLimit = exports.concat = exports.compose = exports.cargo = exports.autoInject = exports.auto = exports.asyncify = exports.applyEachSeries = exports.applyEach = exports.apply = undefined;
>exports.wrapSync : Symbol(wrapSync, Decl(a.js, 0, 0))
>exports : Symbol(wrapSync, Decl(a.js, 0, 0))
>wrapSync : Symbol(wrapSync, Decl(a.js, 0, 0))
>exports.selectSeries : Symbol(selectSeries, Decl(a.js, 0, 18))
>exports : Symbol(selectSeries, Decl(a.js, 0, 18))
>selectSeries : Symbol(selectSeries, Decl(a.js, 0, 18))
>exports.selectLimit : Symbol(selectLimit, Decl(a.js, 0, 41))
>exports : Symbol(selectLimit, Decl(a.js, 0, 41))
>selectLimit : Symbol(selectLimit, Decl(a.js, 0, 41))
>exports.select : Symbol(select, Decl(a.js, 0, 63))
>exports : Symbol(select, Decl(a.js, 0, 63))
>select : Symbol(select, Decl(a.js, 0, 63))
>exports.foldr : Symbol(foldr, Decl(a.js, 0, 80))
>exports : Symbol(foldr, Decl(a.js, 0, 80))
>foldr : Symbol(foldr, Decl(a.js, 0, 80))
>exports.foldl : Symbol(foldl, Decl(a.js, 0, 96))
>exports : Symbol(foldl, Decl(a.js, 0, 96))
>foldl : Symbol(foldl, Decl(a.js, 0, 96))
>exports.inject : Symbol(inject, Decl(a.js, 0, 112))
>exports : Symbol(inject, Decl(a.js, 0, 112))
>inject : Symbol(inject, Decl(a.js, 0, 112))
>exports.forEachOfLimit : Symbol(forEachOfLimit, Decl(a.js, 0, 129))
>exports : Symbol(forEachOfLimit, Decl(a.js, 0, 129))
>forEachOfLimit : Symbol(forEachOfLimit, Decl(a.js, 0, 129))
>exports.forEachOfSeries : Symbol(forEachOfSeries, Decl(a.js, 0, 154))
>exports : Symbol(forEachOfSeries, Decl(a.js, 0, 154))
>forEachOfSeries : Symbol(forEachOfSeries, Decl(a.js, 0, 154))
>exports.forEachOf : Symbol(forEachOf, Decl(a.js, 0, 180))
>exports : Symbol(forEachOf, Decl(a.js, 0, 180))
>forEachOf : Symbol(forEachOf, Decl(a.js, 0, 180))
>exports.forEachLimit : Symbol(forEachLimit, Decl(a.js, 0, 200))
>exports : Symbol(forEachLimit, Decl(a.js, 0, 200))
>forEachLimit : Symbol(forEachLimit, Decl(a.js, 0, 200))
>exports.forEachSeries : Symbol(forEachSeries, Decl(a.js, 0, 223))
>exports : Symbol(forEachSeries, Decl(a.js, 0, 223))
>forEachSeries : Symbol(forEachSeries, Decl(a.js, 0, 223))
>exports.forEach : Symbol(forEach, Decl(a.js, 0, 247))
>exports : Symbol(forEach, Decl(a.js, 0, 247))
>forEach : Symbol(forEach, Decl(a.js, 0, 247))
>exports.findSeries : Symbol(findSeries, Decl(a.js, 0, 265))
>exports : Symbol(findSeries, Decl(a.js, 0, 265))
>findSeries : Symbol(findSeries, Decl(a.js, 0, 265))
>exports.findLimit : Symbol(findLimit, Decl(a.js, 0, 286))
>exports : Symbol(findLimit, Decl(a.js, 0, 286))
>findLimit : Symbol(findLimit, Decl(a.js, 0, 286))
>exports.find : Symbol(find, Decl(a.js, 0, 306))
>exports : Symbol(find, Decl(a.js, 0, 306))
>find : Symbol(find, Decl(a.js, 0, 306))
>exports.anySeries : Symbol(anySeries, Decl(a.js, 0, 321))
>exports : Symbol(anySeries, Decl(a.js, 0, 321))
>anySeries : Symbol(anySeries, Decl(a.js, 0, 321))
>exports.anyLimit : Symbol(anyLimit, Decl(a.js, 0, 341))
>exports : Symbol(anyLimit, Decl(a.js, 0, 341))
>anyLimit : Symbol(anyLimit, Decl(a.js, 0, 341))
>exports.any : Symbol(any, Decl(a.js, 0, 360))
>exports : Symbol(any, Decl(a.js, 0, 360))
>any : Symbol(any, Decl(a.js, 0, 360))
>exports.allSeries : Symbol(allSeries, Decl(a.js, 0, 374))
>exports : Symbol(allSeries, Decl(a.js, 0, 374))
>allSeries : Symbol(allSeries, Decl(a.js, 0, 374))
>exports.allLimit : Symbol(allLimit, Decl(a.js, 0, 394))
>exports : Symbol(allLimit, Decl(a.js, 0, 394))
>allLimit : Symbol(allLimit, Decl(a.js, 0, 394))
>exports.all : Symbol(all, Decl(a.js, 0, 413))
>exports : Symbol(all, Decl(a.js, 0, 413))
>all : Symbol(all, Decl(a.js, 0, 413))
>exports.whilst : Symbol(whilst, Decl(a.js, 0, 427))
>exports : Symbol(whilst, Decl(a.js, 0, 427))
>whilst : Symbol(whilst, Decl(a.js, 0, 427))
>exports.waterfall : Symbol(waterfall, Decl(a.js, 0, 444))
>exports : Symbol(waterfall, Decl(a.js, 0, 444))
>waterfall : Symbol(waterfall, Decl(a.js, 0, 444))
>exports.until : Symbol(until, Decl(a.js, 0, 464))
>exports : Symbol(until, Decl(a.js, 0, 464))
>until : Symbol(until, Decl(a.js, 0, 464))
>exports.unmemoize : Symbol(unmemoize, Decl(a.js, 0, 480))
>exports : Symbol(unmemoize, Decl(a.js, 0, 480))
>unmemoize : Symbol(unmemoize, Decl(a.js, 0, 480))
>exports.tryEach : Symbol(tryEach, Decl(a.js, 0, 500))
>exports : Symbol(tryEach, Decl(a.js, 0, 500))
>tryEach : Symbol(tryEach, Decl(a.js, 0, 500))
>exports.transform : Symbol(transform, Decl(a.js, 0, 518))
>exports : Symbol(transform, Decl(a.js, 0, 518))
>transform : Symbol(transform, Decl(a.js, 0, 518))
>exports.timesSeries : Symbol(timesSeries, Decl(a.js, 0, 538))
>exports : Symbol(timesSeries, Decl(a.js, 0, 538))
>timesSeries : Symbol(timesSeries, Decl(a.js, 0, 538))
>exports.timesLimit : Symbol(timesLimit, Decl(a.js, 0, 560))
>exports : Symbol(timesLimit, Decl(a.js, 0, 560))
>timesLimit : Symbol(timesLimit, Decl(a.js, 0, 560))
>exports.times : Symbol(times, Decl(a.js, 0, 581))
>exports : Symbol(times, Decl(a.js, 0, 581))
>times : Symbol(times, Decl(a.js, 0, 581))
>exports.timeout : Symbol(timeout, Decl(a.js, 0, 597))
>exports : Symbol(timeout, Decl(a.js, 0, 597))
>timeout : Symbol(timeout, Decl(a.js, 0, 597))
>exports.sortBy : Symbol(sortBy, Decl(a.js, 0, 615))
>exports : Symbol(sortBy, Decl(a.js, 0, 615))
>sortBy : Symbol(sortBy, Decl(a.js, 0, 615))
>exports.someSeries : Symbol(someSeries, Decl(a.js, 0, 632))
>exports : Symbol(someSeries, Decl(a.js, 0, 632))
>someSeries : Symbol(someSeries, Decl(a.js, 0, 632))
>exports.someLimit : Symbol(someLimit, Decl(a.js, 0, 653))
>exports : Symbol(someLimit, Decl(a.js, 0, 653))
>someLimit : Symbol(someLimit, Decl(a.js, 0, 653))
>exports.some : Symbol(some, Decl(a.js, 0, 673))
>exports : Symbol(some, Decl(a.js, 0, 673))
>some : Symbol(some, Decl(a.js, 0, 673))
>exports.setImmediate : Symbol(setImmediate, Decl(a.js, 0, 688))
>exports : Symbol(setImmediate, Decl(a.js, 0, 688))
>setImmediate : Symbol(setImmediate, Decl(a.js, 0, 688))
>exports.series : Symbol(series, Decl(a.js, 0, 711))
>exports : Symbol(series, Decl(a.js, 0, 711))
>series : Symbol(series, Decl(a.js, 0, 711))
>exports.seq : Symbol(seq, Decl(a.js, 0, 728))
>exports : Symbol(seq, Decl(a.js, 0, 728))
>seq : Symbol(seq, Decl(a.js, 0, 728))
>exports.retryable : Symbol(retryable, Decl(a.js, 0, 742))
>exports : Symbol(retryable, Decl(a.js, 0, 742))
>retryable : Symbol(retryable, Decl(a.js, 0, 742))
>exports.retry : Symbol(retry, Decl(a.js, 0, 762))
>exports : Symbol(retry, Decl(a.js, 0, 762))
>retry : Symbol(retry, Decl(a.js, 0, 762))
>exports.rejectSeries : Symbol(rejectSeries, Decl(a.js, 0, 778))
>exports : Symbol(rejectSeries, Decl(a.js, 0, 778))
>rejectSeries : Symbol(rejectSeries, Decl(a.js, 0, 778))
>exports.rejectLimit : Symbol(rejectLimit, Decl(a.js, 0, 801))
>exports : Symbol(rejectLimit, Decl(a.js, 0, 801))
>rejectLimit : Symbol(rejectLimit, Decl(a.js, 0, 801))
>exports.reject : Symbol(reject, Decl(a.js, 0, 823))
>exports : Symbol(reject, Decl(a.js, 0, 823))
>reject : Symbol(reject, Decl(a.js, 0, 823))
>exports.reflectAll : Symbol(reflectAll, Decl(a.js, 0, 840))
>exports : Symbol(reflectAll, Decl(a.js, 0, 840))
>reflectAll : Symbol(reflectAll, Decl(a.js, 0, 840))
>exports.reflect : Symbol(reflect, Decl(a.js, 0, 861))
>exports : Symbol(reflect, Decl(a.js, 0, 861))
>reflect : Symbol(reflect, Decl(a.js, 0, 861))
>exports.reduceRight : Symbol(reduceRight, Decl(a.js, 0, 879))
>exports : Symbol(reduceRight, Decl(a.js, 0, 879))
>reduceRight : Symbol(reduceRight, Decl(a.js, 0, 879))
>exports.reduce : Symbol(reduce, Decl(a.js, 0, 901))
>exports : Symbol(reduce, Decl(a.js, 0, 901))
>reduce : Symbol(reduce, Decl(a.js, 0, 901))
>exports.race : Symbol(race, Decl(a.js, 0, 918))
>exports : Symbol(race, Decl(a.js, 0, 918))
>race : Symbol(race, Decl(a.js, 0, 918))
>exports.queue : Symbol(queue, Decl(a.js, 0, 933))
>exports : Symbol(queue, Decl(a.js, 0, 933))
>queue : Symbol(queue, Decl(a.js, 0, 933))
>exports.priorityQueue : Symbol(priorityQueue, Decl(a.js, 0, 949))
>exports : Symbol(priorityQueue, Decl(a.js, 0, 949))
>priorityQueue : Symbol(priorityQueue, Decl(a.js, 0, 949))
>exports.parallelLimit : Symbol(parallelLimit, Decl(a.js, 0, 973))
>exports : Symbol(parallelLimit, Decl(a.js, 0, 973))
>parallelLimit : Symbol(parallelLimit, Decl(a.js, 0, 973))
>exports.parallel : Symbol(parallel, Decl(a.js, 0, 997))
>exports : Symbol(parallel, Decl(a.js, 0, 997))
>parallel : Symbol(parallel, Decl(a.js, 0, 997))
>exports.nextTick : Symbol(nextTick, Decl(a.js, 0, 1016))
>exports : Symbol(nextTick, Decl(a.js, 0, 1016))
>nextTick : Symbol(nextTick, Decl(a.js, 0, 1016))
>exports.memoize : Symbol(memoize, Decl(a.js, 0, 1035))
>exports : Symbol(memoize, Decl(a.js, 0, 1035))
>memoize : Symbol(memoize, Decl(a.js, 0, 1035))
>exports.mapValuesSeries : Symbol(mapValuesSeries, Decl(a.js, 0, 1053))
>exports : Symbol(mapValuesSeries, Decl(a.js, 0, 1053))
>mapValuesSeries : Symbol(mapValuesSeries, Decl(a.js, 0, 1053))
>exports.mapValuesLimit : Symbol(mapValuesLimit, Decl(a.js, 0, 1079))
>exports : Symbol(mapValuesLimit, Decl(a.js, 0, 1079))
>mapValuesLimit : Symbol(mapValuesLimit, Decl(a.js, 0, 1079))
>exports.mapValues : Symbol(mapValues, Decl(a.js, 0, 1104))
>exports : Symbol(mapValues, Decl(a.js, 0, 1104))
>mapValues : Symbol(mapValues, Decl(a.js, 0, 1104))
>exports.mapSeries : Symbol(mapSeries, Decl(a.js, 0, 1124))
>exports : Symbol(mapSeries, Decl(a.js, 0, 1124))
>mapSeries : Symbol(mapSeries, Decl(a.js, 0, 1124))
>exports.mapLimit : Symbol(mapLimit, Decl(a.js, 0, 1144))
>exports : Symbol(mapLimit, Decl(a.js, 0, 1144))
>mapLimit : Symbol(mapLimit, Decl(a.js, 0, 1144))
>exports.map : Symbol(map, Decl(a.js, 0, 1163))
>exports : Symbol(map, Decl(a.js, 0, 1163))
>map : Symbol(map, Decl(a.js, 0, 1163))
>exports.log : Symbol(log, Decl(a.js, 0, 1177))
>exports : Symbol(log, Decl(a.js, 0, 1177))
>log : Symbol(log, Decl(a.js, 0, 1177))
>exports.groupBySeries : Symbol(groupBySeries, Decl(a.js, 0, 1191))
>exports : Symbol(groupBySeries, Decl(a.js, 0, 1191))
>groupBySeries : Symbol(groupBySeries, Decl(a.js, 0, 1191))
>exports.groupByLimit : Symbol(groupByLimit, Decl(a.js, 0, 1215))
>exports : Symbol(groupByLimit, Decl(a.js, 0, 1215))
>groupByLimit : Symbol(groupByLimit, Decl(a.js, 0, 1215))
>exports.groupBy : Symbol(groupBy, Decl(a.js, 0, 1238))
>exports : Symbol(groupBy, Decl(a.js, 0, 1238))
>groupBy : Symbol(groupBy, Decl(a.js, 0, 1238))
>exports.forever : Symbol(forever, Decl(a.js, 0, 1256))
>exports : Symbol(forever, Decl(a.js, 0, 1256))
>forever : Symbol(forever, Decl(a.js, 0, 1256))
>exports.filterSeries : Symbol(filterSeries, Decl(a.js, 0, 1274))
>exports : Symbol(filterSeries, Decl(a.js, 0, 1274))
>filterSeries : Symbol(filterSeries, Decl(a.js, 0, 1274))
>exports.filterLimit : Symbol(filterLimit, Decl(a.js, 0, 1297))
>exports : Symbol(filterLimit, Decl(a.js, 0, 1297))
>filterLimit : Symbol(filterLimit, Decl(a.js, 0, 1297))
>exports.filter : Symbol(filter, Decl(a.js, 0, 1319))
>exports : Symbol(filter, Decl(a.js, 0, 1319))
>filter : Symbol(filter, Decl(a.js, 0, 1319))
>exports.everySeries : Symbol(everySeries, Decl(a.js, 0, 1336))
>exports : Symbol(everySeries, Decl(a.js, 0, 1336))
>everySeries : Symbol(everySeries, Decl(a.js, 0, 1336))
>exports.everyLimit : Symbol(everyLimit, Decl(a.js, 0, 1358))
>exports : Symbol(everyLimit, Decl(a.js, 0, 1358))
>everyLimit : Symbol(everyLimit, Decl(a.js, 0, 1358))
>exports.every : Symbol(every, Decl(a.js, 0, 1379))
>exports : Symbol(every, Decl(a.js, 0, 1379))
>every : Symbol(every, Decl(a.js, 0, 1379))
>exports.ensureAsync : Symbol(ensureAsync, Decl(a.js, 0, 1395))
>exports : Symbol(ensureAsync, Decl(a.js, 0, 1395))
>ensureAsync : Symbol(ensureAsync, Decl(a.js, 0, 1395))
>exports.eachSeries : Symbol(eachSeries, Decl(a.js, 0, 1417))
>exports : Symbol(eachSeries, Decl(a.js, 0, 1417))
>eachSeries : Symbol(eachSeries, Decl(a.js, 0, 1417))
>exports.eachOfSeries : Symbol(eachOfSeries, Decl(a.js, 0, 1438))
>exports : Symbol(eachOfSeries, Decl(a.js, 0, 1438))
>eachOfSeries : Symbol(eachOfSeries, Decl(a.js, 0, 1438))
>exports.eachOfLimit : Symbol(eachOfLimit, Decl(a.js, 0, 1461))
>exports : Symbol(eachOfLimit, Decl(a.js, 0, 1461))
>eachOfLimit : Symbol(eachOfLimit, Decl(a.js, 0, 1461))
>exports.eachOf : Symbol(eachOf, Decl(a.js, 0, 1483))
>exports : Symbol(eachOf, Decl(a.js, 0, 1483))
>eachOf : Symbol(eachOf, Decl(a.js, 0, 1483))
>exports.eachLimit : Symbol(eachLimit, Decl(a.js, 0, 1500))
>exports : Symbol(eachLimit, Decl(a.js, 0, 1500))
>eachLimit : Symbol(eachLimit, Decl(a.js, 0, 1500))
>exports.each : Symbol(each, Decl(a.js, 0, 1520))
>exports : Symbol(each, Decl(a.js, 0, 1520))
>each : Symbol(each, Decl(a.js, 0, 1520))
>exports.during : Symbol(during, Decl(a.js, 0, 1535))
>exports : Symbol(during, Decl(a.js, 0, 1535))
>during : Symbol(during, Decl(a.js, 0, 1535))
>exports.doWhilst : Symbol(doWhilst, Decl(a.js, 0, 1552))
>exports : Symbol(doWhilst, Decl(a.js, 0, 1552))
>doWhilst : Symbol(doWhilst, Decl(a.js, 0, 1552))
>exports.doUntil : Symbol(doUntil, Decl(a.js, 0, 1571))
>exports : Symbol(doUntil, Decl(a.js, 0, 1571))
>doUntil : Symbol(doUntil, Decl(a.js, 0, 1571))
>exports.doDuring : Symbol(doDuring, Decl(a.js, 0, 1589))
>exports : Symbol(doDuring, Decl(a.js, 0, 1589))
>doDuring : Symbol(doDuring, Decl(a.js, 0, 1589))
>exports.dir : Symbol(dir, Decl(a.js, 0, 1608))
>exports : Symbol(dir, Decl(a.js, 0, 1608))
>dir : Symbol(dir, Decl(a.js, 0, 1608))
>exports.detectSeries : Symbol(detectSeries, Decl(a.js, 0, 1622))
>exports : Symbol(detectSeries, Decl(a.js, 0, 1622))
>detectSeries : Symbol(detectSeries, Decl(a.js, 0, 1622))
>exports.detectLimit : Symbol(detectLimit, Decl(a.js, 0, 1645))
>exports : Symbol(detectLimit, Decl(a.js, 0, 1645))
>detectLimit : Symbol(detectLimit, Decl(a.js, 0, 1645))
>exports.detect : Symbol(detect, Decl(a.js, 0, 1667))
>exports : Symbol(detect, Decl(a.js, 0, 1667))
>detect : Symbol(detect, Decl(a.js, 0, 1667))
>exports.constant : Symbol(constant, Decl(a.js, 0, 1684))
>exports : Symbol(constant, Decl(a.js, 0, 1684))
>constant : Symbol(constant, Decl(a.js, 0, 1684))
>exports.concatSeries : Symbol(concatSeries, Decl(a.js, 0, 1703))
>exports : Symbol(concatSeries, Decl(a.js, 0, 1703))
>concatSeries : Symbol(concatSeries, Decl(a.js, 0, 1703))
>exports.concatLimit : Symbol(concatLimit, Decl(a.js, 0, 1726))
>exports : Symbol(concatLimit, Decl(a.js, 0, 1726))
>concatLimit : Symbol(concatLimit, Decl(a.js, 0, 1726))
>exports.concat : Symbol(concat, Decl(a.js, 0, 1748))
>exports : Symbol(concat, Decl(a.js, 0, 1748))
>concat : Symbol(concat, Decl(a.js, 0, 1748))
>exports.compose : Symbol(compose, Decl(a.js, 0, 1765))
>exports : Symbol(compose, Decl(a.js, 0, 1765))
>compose : Symbol(compose, Decl(a.js, 0, 1765))
>exports.cargo : Symbol(cargo, Decl(a.js, 0, 1783))
>exports : Symbol(cargo, Decl(a.js, 0, 1783))
>cargo : Symbol(cargo, Decl(a.js, 0, 1783))
>exports.autoInject : Symbol(autoInject, Decl(a.js, 0, 1799))
>exports : Symbol(autoInject, Decl(a.js, 0, 1799))
>autoInject : Symbol(autoInject, Decl(a.js, 0, 1799))
>exports.auto : Symbol(auto, Decl(a.js, 0, 1820))
>exports : Symbol(auto, Decl(a.js, 0, 1820))
>auto : Symbol(auto, Decl(a.js, 0, 1820))
>exports.asyncify : Symbol(asyncify, Decl(a.js, 0, 1835))
>exports : Symbol(asyncify, Decl(a.js, 0, 1835))
>asyncify : Symbol(asyncify, Decl(a.js, 0, 1835))
>exports.applyEachSeries : Symbol(applyEachSeries, Decl(a.js, 0, 1854))
>exports : Symbol(applyEachSeries, Decl(a.js, 0, 1854))
>applyEachSeries : Symbol(applyEachSeries, Decl(a.js, 0, 1854))
>exports.applyEach : Symbol(applyEach, Decl(a.js, 0, 1880))
>exports : Symbol(applyEach, Decl(a.js, 0, 1880))
>applyEach : Symbol(applyEach, Decl(a.js, 0, 1880))
>exports.apply : Symbol(apply, Decl(a.js, 0, 1900))
>exports : Symbol(apply, Decl(a.js, 0, 1900))
>apply : Symbol(apply, Decl(a.js, 0, 1900))
>undefined : Symbol(undefined)

Loading