inspect-parameters-declaration

0.1.0 • Public • Published

inspect-parameters-declaration

Build Status npm npm

Inspects function's parameters declaration and returns information about it (e.g. names, default values, if needs destructuring, destructured parameters names and default values).

Installation

npm install inspect-parameters-declaration

CLI

npm install inspect-parameters-declaration -g
npx inspect-parameters-declaration --help

Usage

inspectParameters(source);

getParametersNames(source);

  • source is a function reference or a string containing the parameters declaration (e.g. 'a = "z, b = [1,2,3], c, {d,e: {f}, g} = {}')

getParametersNamesFromInspection(inspectedParameters);

  • inspectedParameters expects the result from inspectParameters(source);
const { getParametersNames, inspectParameters } = require('inspect-parameters-declaration');
 
const testFunction = (a = "z", b = [1,2,3], c, {d,e: {f}, g} = {}, ...theArgs) => console.log("noop");
 
const parametersNames = getParametersNames(testFunction);
const inspectedParameters = inspectParameters(testFunction);
 
///////////////////////////////
// parametersNames :: RESULT //
///////////////////////////////
// [ "a", "b", "c", "d", "f", "g", "theArgs" ]
 
 
///////////////////////////////////
// inspectedParameters :: RESULT //
///////////////////////////////////
// [
//     {
//         "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"
//             }
//         ]
//     },
//     {
//         "parameter": "theArgs",
//         "isRestParameter": true,
//         "declaration": "...theArgs"
//     }
// ]

/inspect-parameters-declaration/

    Package Sidebar

    Install

    npm i inspect-parameters-declaration

    Weekly Downloads

    276,854

    Version

    0.1.0

    License

    MIT

    Unpacked Size

    16.5 kB

    Total Files

    7

    Last publish

    Collaborators

    • diegozoracky