@code-to-json/core
Version:
[](https://travis-ci.org/code-to-json/code-to-json) [](https://d
21 lines • 2.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const ref_1 = require("@code-to-json/utils/lib/src/deferred-processing/ref");
const typescript_1 = require("typescript");
/** Serialize a signature (call or construct) */
function serializeSignature(signature, checker, q) {
const { parameters, typeParameters } = signature;
return {
parameters: parameters && parameters.length > 0
? parameters.map(p => q.queue(p, 'symbol', checker)).filter(ref_1.isRef)
: undefined,
typeParameters: typeParameters
? typeParameters.map(p => q.queue(p, 'type', checker)).filter(ref_1.isRef)
: undefined,
// declaration: declaration ? q.queue(declaration, 'declaration', checker) : undefined,
returnType: q.queue(signature.getReturnType(), 'type', checker),
documentation: typescript_1.displayPartsToString(signature.getDocumentationComment(checker))
};
}
exports.default = serializeSignature;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcmlhbGl6ZXJzL3NpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZFQUE0RTtBQUM1RSwyQ0FBMEU7QUFZMUUsZ0RBQWdEO0FBQ2hELFNBQXdCLGtCQUFrQixDQUN4QyxTQUFvQixFQUNwQixPQUFvQixFQUNwQixDQUFrQjtJQUVsQixNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxHQUFHLFNBQVMsQ0FBQztJQUVqRCxPQUFPO1FBQ0wsVUFBVSxFQUNSLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDakMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBSyxDQUFDO1lBQ2xFLENBQUMsQ0FBQyxTQUFTO1FBQ2YsY0FBYyxFQUFFLGNBQWM7WUFDNUIsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBSyxDQUFDO1lBQ3BFLENBQUMsQ0FBQyxTQUFTO1FBQ2IsdUZBQXVGO1FBQ3ZGLFVBQVUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDO1FBQy9ELGFBQWEsRUFBRSxpQ0FBb0IsQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDaEYsQ0FBQztBQUNKLENBQUM7QUFuQkQscUNBbUJDIn0=