(usage)
| 157385 | return checker.createAnonymousType(/*symbol*/ undefined, members, callSignatures, constructSignatures, indexInfos); |
| 157386 | } |
| 157387 | function inferNamedTypesFromProperties(usage) { |
| 157388 | if (!usage.properties || !usage.properties.size) |
| 157389 | return []; |
| 157390 | var types = builtins.filter(function (t) { return allPropertiesAreAssignableToUsage(t, usage); }); |
| 157391 | if (0 < types.length && types.length < 3) { |
| 157392 | return types.map(function (t) { return inferInstantiationFromUsage(t, usage); }); |
| 157393 | } |
| 157394 | return []; |
| 157395 | } |
| 157396 | function allPropertiesAreAssignableToUsage(type, usage) { |
| 157397 | if (!usage.properties) |
| 157398 | return false; |
no test coverage detected