GT2/GT2-Android/node_modules/hasbin/README.md

224 lines
4.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

HasBin
======
Check whether a binary exists in the `PATH` environment variable.
[![NPM version][shield-npm]][info-npm]
[![Node.js version support][shield-node]][info-node]
[![Build status][shield-build]][info-build]
[![Dependencies][shield-dependencies]][info-dependencies]
[![MIT licensed][shield-license]][info-license]
```js
var hasbin = require('hasbin');
// Check if a binary exists
hasbin('node', function (result) {
// result === true
});
hasbin('wtf', function (result) {
// result === false
});
// Check if all binaries exist
hasbin.all(['node', 'npm'], function (result) {
// result === true
});
// Check if at least one binary exists
hasbin.some(['node', 'wtf'], function (result) {
// result === true
});
// Find the first available binary
hasbin.first(['node', 'npm'], function (result) {
// result === 'node'
});
```
Table Of Contents
-----------------
- [Install](#install)
- [Usage](#usage)
- [Contributing](#contributing)
- [License](#license)
Install
-------
Install HasBin with [npm][npm]:
```sh
npm install hasbin
```
Usage
-----
### `hasbin(binaryName, callback)`
Check whether a binary exists on one of the paths in `process.env.PATH`. Calls back with `true` if it does.
```js
// Arguments
binaryName = String
callback = Function(Boolean)
```
```js
// Example
hasbin('node', function (result) {
// result === true
});
```
### `hasbin.sync(binaryName)`
Synchronous `hasbin`.
```js
// Arguments
binaryName = String
return Boolean
```
```js
// Example
result = hasbin.sync('node');
```
### `hasbin.all(binaryNames, callback)`
Check whether all of a set of binaries exist on one of the paths in `process.env.PATH`. Calls back with `true` if all of the binaries do. Aliased as `hasbin.every`.
```js
// Arguments
binaryNames = Array(String)
callback = Function(Boolean)
```
```js
// Example
hasbin.all(['node', 'npm'], function (result) {
// result === true
});
```
### `hasbin.all.sync(binaryNames)`
Synchronous `hasbin.all`. Aliased as `hasbin.every.sync`.
```js
// Arguments
binaryNames = Array(String)
return Boolean
```
```js
// Example
result = hasbin.all.sync(['node', 'npm']);
```
### `hasbin.some(binaryNames, callback)`
Check whether at least one of a set of binaries exists on one of the paths in `process.env.PATH`. Calls back with `true` if at least one of the binaries does. Aliased as `hasbin.any`.
```js
// Arguments
binaryNames = Array(String)
callback = Function(Boolean)
```
```js
// Example
hasbin.some(['node', 'npm'], function (result) {
// result === true
});
```
### `hasbin.some.sync(binaryNames)`
Synchronous `hasbin.some`. Aliased as `hasbin.any.sync`.
```js
// Arguments
binaryNames = Array(String)
return Boolean
```
```js
// Example
result = hasbin.some.sync(['node', 'npm']);
```
### `hasbin.first(binaryNames, callback)`
Checks the list of `binaryNames` to find the first binary that exists on one of the paths in `process.env.PATH`. Calls back with the name of the first matched binary if one exists and `false` otherwise.
```js
// Arguments
binaryNames = Array(String)
callback = Function(String|false)
```
```js
// Example
hasbin.first(['node', 'npm'], function (result) {
// result === 'node'
});
```
### `hasbin.first.sync(binaryNames)`
Synchronous `hasbin.first`.
```js
// Arguments
binaryNames = Array(String)
return String|false
```
```js
// Example
result = hasbin.first.sync(['node', 'npm']);
```
Contributing
------------
To contribute to HasBin, clone this repo locally and commit your code on a separate branch.
Please write unit tests for your code, and check that everything works by running the following before opening a pull-request:
```sh
make ci
```
License
-------
HasBin is licensed under the [MIT][info-license] license.
Copyright © 2015, Springer Nature
[npm]: https://npmjs.org/
[info-coverage]: https://coveralls.io/github/springernature/hasbin
[info-dependencies]: https://gemnasium.com/springernature/hasbin
[info-license]: LICENSE
[info-node]: package.json
[info-npm]: https://www.npmjs.com/package/hasbin
[info-build]: https://travis-ci.org/springernature/hasbin
[shield-coverage]: https://img.shields.io/coveralls/springernature/hasbin.svg
[shield-dependencies]: https://img.shields.io/gemnasium/springernature/hasbin.svg
[shield-license]: https://img.shields.io/badge/license-MIT-blue.svg
[shield-node]: https://img.shields.io/badge/node.js%20support-0.106-brightgreen.svg
[shield-npm]: https://img.shields.io/npm/v/hasbin.svg
[shield-build]: https://img.shields.io/travis/springernature/hasbin/master.svg