Package Exports
- inspect-function
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (inspect-function) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
inspect-function
Inspects a function and returns informations about it (e.g. name, parameters names, parameters and default values, signature). Useful when creating automated tasks, e.g., docs generations.
Installation
npm install inspect-function
CLI
npm install inspect-function -g
npx inspect-function --help
Usage
inspectFunction(fn, name);
// The module
const inspectFunction = require('inspect-function');
// A function
const testFunction = (a = 'z', b = [1,2,3], c, {d,e: {f}, g} = {}) => console.log('noop');
// Inspects
const result = inspectFunction(testFunction);
////////////////////////
// `result` will be: //
////////////////////////
{
"name": "testFunction",
"signature": "testFunction(a = 'z', b = [1,2,3], c, {d,e: {f}, g} = {});",
"parameters": [
{
"parameter": "a",
"defaultValue": "z",
"declaration": "a = 'z'"
},
{
"parameter": "b",
"defaultValue": "[1,2,3]",
"declaration": "b = [1,2,3]"
},
{
"parameter": "c",
"declaration": "c"
},
{
"parameter": "{d,e: {f}, g}",
"defaultValue": "{}",
"expectsDestructuring": true,
"declaration": "{d,e: {f}, g} = {}",
"destructuredParameters": [
{
"parameter": "d",
"declaration": "d"
},
{
"parameter": "f",
"declaration": "f"
},
{
"parameter": "g",
"declaration": "g"
}
]
}
],
"parametersNames": [
"a",
"b",
"c",
"d",
"f",
"g"
]
}