maxtaco / tamejs

JavaScript code rewriter for taming async-callback-style code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Regular expressions not parsed correctly

pronvit opened this issue · comments

Code

    if (/^\/admin/.test(req.url)) {
        next();
        return;
    }

gives an error

xxx.tjs:79
        if (/ ^\ / admin / . test ( req . url )) {
                   ^^^^^
SyntaxError: Unexpected identifier
    at Module._compile (module.js:439:25)
    at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
SyntaxError: Unexpected identifier
    at Module._compile (module.js:439:25)
    at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
undefined
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)

It's a known problem, look at the old bugs. We need to change parsers. You can use the regex constructor with a string: (new RegExp("^admin")).test(req.url) or similar, wrap it in a function and it's easier to use anyway, I think. That's the first bug I ever reported to the project.

On Wed, Sep 17, 2014 at 4:06 AM, Vitaly Pronkin notifications@github.com
wrote:

Code

    if (/^\/admin/.test(req.url)) {
        next();
        return;
    }

gives an error

xxx.tjs:79
        if (/ ^\ / admin / . test ( req . url )) {
                   ^^^^^
SyntaxError: Unexpected identifier
    at Module._compile (module.js:439:25)
    at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
SyntaxError: Unexpected identifier
    at Module._compile (module.js:439:25)
    at Object._extension [as .tjs] (/Users/vit/Development/xxx/node_modules/tamejs/lib/tamejs.js:62:12)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
undefined
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/vit/Development/xxx/lib/xxx.js:871:1)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)

Reply to this email directly or view it on GitHub:
#44

Oh yes, I missed another open issue for this, sorry.