Commits on Nov 14, 2013
Commits on Nov 13, 2013
Commits on Oct 31, 2013
  1. Fix for tokenizing and regex

    When running tokenize on code with regular expression literals
    the order of tokens would sometimes be off and extra tokens inserted.
    This was due to peek being called before scanRegExp finished adding
    the literal to extra.tokens.
    disnet committed Oct 31, 2013
Commits on Oct 7, 2013
  1. Update some files in the benchmark corpus.

    Updated libraries:
    - Underscore.js 1.5.2
    - jQuery Mobile 1.3.2
    - AngularJS 1.0.8
    - YUI 3.12.0
    ariya committed Oct 7, 2013
  2. Add Node script to generate the identifier regexes.

    The script was taken from
    and then modified to match Esprima’s needs.
    It replaces the Python script that was previously used for the same
    purpose. The new script is simpler, more compact, and doesn’t require
    any manual post-processing of the data.
    mathiasbynens committed with ariya Oct 6, 2013
Commits on Oct 5, 2013
  1. Fix the attachment of comments.

    Both the proximity and the size of each syntax node need to be taken
    into account when deciding which comment must be attached.
    ariya committed Oct 5, 2013
  2. Attach every comment to the possible previous syntax node.

    The comment is placed in the trailingComments array of the said node.
    This is based on the original patch from Yusuke Suzuki.
    ariya committed Oct 5, 2013
Commits on Oct 1, 2013
Commits on Sep 27, 2013
  1. Support --> HTML comment.

      --> at the start of a line, optionally preceded by whitespace or
      MultiLineComments, must be treated as a SingleLineComment
      — equivalent to //.
    ariya committed Sep 27, 2013
  2. Move the tests for HTML comment.

    These are not only for tolerant mode, place them in the Comment category.
    ariya committed Sep 27, 2013
Commits on Sep 23, 2013
  1. Attach every comment to the possible following syntax node.

    The comment is placed in the leadingComments array of the said node.
    This is based on the original patch from Yusuke Suzuki.
    ariya committed Sep 23, 2013
Commits on Sep 20, 2013
Commits on Sep 11, 2013
  1. Fix wrong handling of relational expression in a for statement.

    If operator 'in' is not allowed, it can not be just allowed within
    the binary expression.
    ariya committed Aug 29, 2013
Commits on Sep 5, 2013
Commits on Aug 28, 2013
Commits on Aug 10, 2013
Commits on Jul 31, 2013
  1. Support escaped "]" in regexp literal character classes (ex: "/[\]/]/")
    The RegExp expression parser did not handle the escape sequence "\]" within
    character classes, or any escape sequence for that matter. Once in a character
    class, the parser consumed all characters until reaching "]".
    This diff makes the parser always consider escape sequences, whether it is
    currently inside of a character class or not. This more closely matches the
    grammar, which looks like:
      RegularExpressionChar ::=
        RegularExpressionNonTerminator but not \ or / or [
      RegularExpressionClassChar ::=
        RegularExpressionNonTerminator but not ] or \
    That is, the parser can derive RegularExpressionBackslashSequence both inside
    and outside of character classes.
    Test plan: Added test case to test.js and loaded it in Chrome 30 and Firefox 25.
    These browsers produce different results for `new RegExp('[\\]/]').toString()`
    so the test case dynamically computes that value.
    James Ide committed Jul 31, 2013
Commits on Jul 14, 2013
  1. Parsing empty switch contains 'cases' key

    SpiderMonkey and the Parser API defined 'cases' to be in the
    SwitchStatement production.
    mduvall committed Jul 14, 2013
Commits on Jul 7, 2013
  1. Remove the need to specialized token handling.

    This also get rids of the patch and unpatch pair.
    ariya committed Jul 7, 2013
Commits on Jun 27, 2013
  1. AMD test: Do not load via script tag explicitly.

    The loading of Esprima should be handled by RequireJS.
    ariya committed Jun 27, 2013
  2. Implement LocationMarker object type.

    This is the master-branch patch analogous to #185, which applies to
    the harmony branch.
    benjamn committed with ariya Jun 3, 2013
Commits on May 28, 2013
Commits on May 24, 2013
  1. Check corner cases of Strict Directive.

    Ensure that EscapeSequence and LineContinuation are handled correctly.
    ariya committed May 24, 2013
  2. Include changes for 1.0.3.

    ariya committed May 24, 2013
Commits on May 21, 2013
  1. Simplify comment collection.

    Instead of two separate functions, now skipComment can also collect all
    line and block comments, making scanComment() not necessary anymore.
    The most cyclomatic function now falls into scanRegExp().
    ariya committed May 21, 2013
  2. Delegate marking should be at the right location.

    Whitespaces and comments skipping should be carried out before
    calling the syntax tree delegate location marking functions.
    ariya committed May 21, 2013
Commits on May 17, 2013