mirror of
https://github.com/titanscouting/tra-analysis.git
synced 2025-09-08 15:57:21 +00:00
push all website files
This commit is contained in:
113
website/functions/node_modules/call-signature/readme.md
generated
vendored
Normal file
113
website/functions/node_modules/call-signature/readme.md
generated
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
# call-signature [](https://travis-ci.org/jamestalmage/call-signature)
|
||||
|
||||
> Parse / Generate Method Signatures
|
||||
|
||||
|
||||
## Install
|
||||
|
||||
```
|
||||
$ npm install --save call-signature
|
||||
```
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
var signature = require('call-signature');
|
||||
|
||||
// parse a call signature definition
|
||||
var parsed = signature.parse('t.equal(expected, actual, [message])');
|
||||
|
||||
console.log(parsed);
|
||||
/* =>
|
||||
{
|
||||
callee: {
|
||||
type: 'MemberExpression',
|
||||
object: 't',
|
||||
member: 'equal'
|
||||
},
|
||||
args: [
|
||||
{
|
||||
name: 'actual',
|
||||
optional: false
|
||||
},
|
||||
{
|
||||
name: 'expected',
|
||||
optional: false
|
||||
},
|
||||
{
|
||||
name: 'message',
|
||||
optional: true
|
||||
}
|
||||
]
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
// Create signature definitions from the parsed object.
|
||||
signature.generate(parsed);
|
||||
|
||||
//=> "t.equal(expected, actual, [message])"
|
||||
```
|
||||
|
||||
|
||||
## API
|
||||
|
||||
### callSignature.parse(input)
|
||||
|
||||
#### input
|
||||
|
||||
Type: `string`
|
||||
|
||||
A string that matches the call signature spec:
|
||||
|
||||
`object.member(required_arg1, required_arg2, [optional_arg1])`
|
||||
`name(required_arg1, required_arg2, [optional_arg1])`
|
||||
|
||||
`object`, `member` and `name` can be any identifiers, but currently the callee must be a `MemberExpression` or an `Identifier` (that requirement may loosen in the future).
|
||||
|
||||
You can have any number of arguments. Optional arguments are denoted by placing the argument name between square `[`brackets`]`.
|
||||
|
||||
#### returns
|
||||
|
||||
A simple JS Object with three properties `callee` and `args`.
|
||||
|
||||
`callee` will be an object containing `type` property and its corresponding properties.
|
||||
|
||||
when matched against `MemberExpression` like `foo.bar(baz)`, `object` and `member` will be strings.
|
||||
|
||||
callee: {
|
||||
type: 'MemberExpression',
|
||||
object: 'foo',
|
||||
member: 'bar'
|
||||
}
|
||||
|
||||
when matched against `Identifier` like `foo(baz)`, `name` will be string.
|
||||
|
||||
callee: {
|
||||
type: 'Identifier',
|
||||
name: 'foo'
|
||||
}
|
||||
|
||||
`args` will be an array. Each item of the array will have two properties `name`, and `optional`.
|
||||
`name` will be the `string` name of the arg. `optional` will be a boolean value.
|
||||
|
||||
### callSignature.generate(parsed)
|
||||
|
||||
#### input
|
||||
|
||||
Type: `Object`
|
||||
|
||||
Must have the same definition as the return value from the `parse` method.
|
||||
|
||||
#### returns
|
||||
|
||||
A `string` signature definition that will parse to exactly the provided input.
|
||||
|
||||
## Related
|
||||
|
||||
- [escallmatch](https://www.npmjs.com/package/escallmatch) - Similar, with compatible string definitions to this library. Can be used to match AST Nodes to parsed signatures.
|
||||
|
||||
## License
|
||||
|
||||
MIT © [James Talmage](http://github.com/jamestalmage)
|
Reference in New Issue
Block a user