nodesource/function-scout

Name: function-scout

Owner: NodeSource

Description: Scouts all functions of a given object and provides data about their origin.

Created: 2017-02-10 16:54:15.0

Updated: 2017-05-21 03:13:50.0

Pushed: 2017-10-26 15:41:15.0

Homepage: https://github.com/thlorenz/function-scout

Size: 1187

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

function-scout build status

Scouts all functions of a given object and provides data about their origin.

function inspect(obj, depth) {
  console.error(require('util').inspect(obj, false, depth || 5, true))
}

const path = require('path')
const scout = require('function-scout')

const res = scout(path.basename, { mutate: true })
inspect(res)
s
outed:
nctionOrigin {
file: 'path.js',
line: 1354,
column: 29,
inferredName: '',
name: 'basename' },
nctions:
{ path: [],
  key: undefined,
  level: 0,
  info:
    FunctionOrigin {
      file: 'path.js',
      line: 1354,
      column: 29,
      inferredName: '',
      name: 'basename' } } ] }

Also see the full fs.createReadStream example

Installation
npm install function-scout
API
functionScout

Scouts all functions in the provided object by traversing it.

It returns an array of all functions found as functions and the cloned object with all functions replaced with their information as scouted

A functions value looks like this:

 { path: [ '_events', 'end', '1' ],
   key: '1',
   level: 3,
   info:
   FunctionOrigin {
     file: '/Volumes/d/dev/js/async-hooks/function-scout/examples/readStream.js',
     line: 10,
     column: 14,
     inferredName: '',
     name: 'onend' } }

The level, path and key provide information about where in the object each function was found.

The scouted functions look the same except they don't have any level, path, key information since they are still attached to the object. The scouted object only is returned if mutate=true and has the resolved functions attached to the paths of the object at which they were originally found. By default mutate=false and thus only functions are returned.

Parameters

Returns Object with properties scouted (if mutate=true) and functions explained above

License

MIT


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.