Comparing version 0.0.18 to 0.0.19
@@ -9,6 +9,6 @@ /** | ||
[![Build Status](https://secure.travis-ci.org/phadej/jsstana.png?branch=master)](http://travis-ci.org/phadej/jsstana) | ||
[![NPM version](https://badge.fury.io/js/jsstana.png)](http://badge.fury.io/js/jsstana) | ||
[![Dependency Status](https://gemnasium.com/phadej/jsstana.png)](https://gemnasium.com/phadej/jsstana) | ||
[![Code Climate](https://codeclimate.com/github/phadej/jsstana.png)](https://codeclimate.com/github/phadej/jsstana) | ||
[![Build Status](https://secure.travis-ci.org/phadej/jsstana.svg?branch=master)](http://travis-ci.org/phadej/jsstana) | ||
[![NPM version](https://badge.fury.io/js/jsstana.svg)](http://badge.fury.io/js/jsstana) | ||
[![Dependency Status](https://gemnasium.com/phadej/jsstana.svg)](https://gemnasium.com/phadej/jsstana) | ||
[![Code Climate](https://img.shields.io/codeclimate/github/phadej/jsstana.svg)](https://codeclimate.com/github/phadej/jsstana) | ||
@@ -15,0 +15,0 @@ ## Synopsis |
@@ -9,3 +9,5 @@ "use strict"; | ||
function lexemeP(parser) { | ||
return p.seq(parser, whitespaceP).onMatch(_.first); | ||
return p.seq(parser, whitespaceP).onMatch(function (m) { | ||
return m[0]; | ||
}); | ||
} | ||
@@ -26,11 +28,13 @@ | ||
var sexprP = p.alt( | ||
p.seq(lexemeP("("), p.repeat(function () { return sexprP; }), lexemeP(")")).onMatch(function (arr) { return arr[1]; }), | ||
lexemeP(p.regex(/[a-zA-Z\?\.\-\/*+<>=!%,~\$][a-zA-Z0-9_\?\.\-\/*+<>=+!%,~\$]*/)).onMatch(_.first), | ||
lexemeP(p.regex(/"((?:[^"]|\\.)*)"/)).onMatch(unquote), | ||
lexemeP(p.regex(/'((?:[^']|\\.)*)'/)).onMatch(unquote), | ||
lexemeP(p.regex(/[0-9]+/)).onMatch(function (m) { return parseInt(_.first(m), 10); } ) | ||
p.seq(lexemeP("("), p.repeat(function () { return sexprP; }), lexemeP(")")).onMatch(function (m) { return m[1]; }), | ||
lexemeP(p.regex(/[a-zA-Z\?\.\-\/*+<>=!%,~\$][a-zA-Z0-9_\?\.\-\/*+<>=+!%,~\$]*/)).onMatch(function (m) { return m[0]; }), | ||
lexemeP(p.regex(/"((?:[^"]|\\.)*?)"/)).onMatch(unquote), | ||
lexemeP(p.regex(/'((?:[^']|\\.)*?)'/)).onMatch(unquote), | ||
lexemeP(p.regex(/[0-9]+/)).onMatch(function (m) { return parseInt(m[0], 10); } ) | ||
); | ||
function parse(input) { | ||
var parser = p.seq(sexprP, p.end).onMatch(_.last); | ||
var parser = p.seq(sexprP, p.end).onMatch(function (m) { | ||
return m[0]; | ||
}); | ||
var res = p.consume(parser, input); | ||
@@ -37,0 +41,0 @@ |
{ | ||
"name": "jsstana", | ||
"description": "s-expression match patterns for Mozilla Parser AST", | ||
"version": "0.0.18", | ||
"version": "0.0.19", | ||
"homepage": "https://github.com/phadej/jsstana", | ||
@@ -29,14 +29,13 @@ "author": { | ||
"engines": { | ||
"node": ">= 0.8.0" | ||
"node": ">= 0.10.0" | ||
}, | ||
"scripts": { | ||
"test": "grunt && npm run-script check-coverage", | ||
"check-coverage": "istanbul cover _mocha test && istanbul check-coverage --statements 100 --branches 100 --functions 100 --lines 100" | ||
"test": "make test" | ||
}, | ||
"devDependencies": { | ||
"grunt-contrib-jshint": "~0.9.2", | ||
"grunt-simple-mocha": "~0.4.0", | ||
"grunt-literate": "~0.1.3", | ||
"grunt": "~0.4.1", | ||
"escodegen": "~1.3.0" | ||
"escodegen": "~1.3.0", | ||
"mocha": "~1.20.1", | ||
"ljs": "~0.2.0", | ||
"jshint": "~2.5.1", | ||
"istanbul": "~0.2.6" | ||
}, | ||
@@ -53,7 +52,7 @@ "keywords": [ | ||
"dependencies": { | ||
"packrattle": "~2.1.0", | ||
"packrattle": "~3.0.1", | ||
"underscore": "~1.6.0", | ||
"walkdir": "0.0.7", | ||
"optimist": "~0.6.0", | ||
"esprima": "~1.0.4", | ||
"esprima": "~1.2.2", | ||
"estraverse": "~1.5.0", | ||
@@ -60,0 +59,0 @@ "levenshtein": "~1.0.2", |
@@ -8,6 +8,6 @@ # jsstana | ||
[![Build Status](https://secure.travis-ci.org/phadej/jsstana.png?branch=master)](http://travis-ci.org/phadej/jsstana) | ||
[![NPM version](https://badge.fury.io/js/jsstana.png)](http://badge.fury.io/js/jsstana) | ||
[![Dependency Status](https://gemnasium.com/phadej/jsstana.png)](https://gemnasium.com/phadej/jsstana) | ||
[![Code Climate](https://codeclimate.com/github/phadej/jsstana.png)](https://codeclimate.com/github/phadej/jsstana) | ||
[![Build Status](https://secure.travis-ci.org/phadej/jsstana.svg?branch=master)](http://travis-ci.org/phadej/jsstana) | ||
[![NPM version](https://badge.fury.io/js/jsstana.svg)](http://badge.fury.io/js/jsstana) | ||
[![Dependency Status](https://gemnasium.com/phadej/jsstana.svg)](https://gemnasium.com/phadej/jsstana) | ||
[![Code Climate](https://img.shields.io/codeclimate/github/phadej/jsstana.svg)](https://codeclimate.com/github/phadej/jsstana) | ||
@@ -239,2 +239,3 @@ ## Synopsis | ||
- 0.0.19 dependency updates | ||
- 0.0.18 null checks | ||
@@ -241,0 +242,0 @@ - Also updated dependencies |
49708
18
1180
315
+ Addedesprima@1.2.5(transitive)
+ Addedpackrattle@3.0.1(transitive)
+ Addedweakmap@0.0.6(transitive)
- Removedcoffee-script@1.12.7(transitive)
- Removedesprima@1.0.4(transitive)
- Removedpackrattle@2.1.0(transitive)
Updatedesprima@~1.2.2
Updatedpackrattle@~3.0.1