Big news!Introducing Socket AI - ChatGPT-Powered Threat Analysis.Learn more
Socket
Socket

mimic-fn

Package Overview
Dependencies
0
Maintainers
2
Versions
8
Issues
File Explorer

Advanced tools

mimic-fn

Make a function mimic another one

    4.0.0latest
    GitHub
    npm

Version published
Maintainers
2
Weekly downloads
50,704,555
increased by8.87%

Weekly downloads

Readme

Source
mimic-fn

Make a function mimic another one

Useful when you wrap a function in another function and like to preserve the original name and other properties.

Install

$ npm install mimic-fn

Usage

import mimicFunction from 'mimic-fn'; function foo() {} foo.unicorn = '🦄'; function wrapper() { return foo(); } console.log(wrapper.name); //=> 'wrapper' mimicFunction(wrapper, foo); console.log(wrapper.name); //=> 'foo' console.log(wrapper.unicorn); //=> '🦄' console.log(String(wrapper)); //=> '/* Wrapped with wrapper() */\nfunction foo() {}'

API

mimicFunction(to, from, options?)

Modifies the to function to mimic the from function. Returns the to function.

name, displayName, and any other properties of from are copied. The length property is not copied. Prototype, class, and inherited properties are copied.

to.toString() will return the same as from.toString() but prepended with a Wrapped with to() comment.

to

Type: Function

Mimicking function.

from

Type: Function

Function to mimic.

options

Type: object

ignoreNonConfigurable

Type: boolean
Default: false

Skip modifying non-configurable properties instead of throwing an error.

  • rename-fn - Rename a function
  • keep-func-props - Wrap a function without changing its name and other properties

Get professional support for this package with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.

Keywords

FAQs

Last updated on 07 Apr 2021

Did you know?

Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install Socket
Socket
Socket SOC 2 Logo

Product

  • Package Issues
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc