Giter Site home page Giter Site logo

Comments (3)

GoogleCodeExporter avatar GoogleCodeExporter commented on August 15, 2024
I'm using a workaround below, break some other cases (empty json object) however

--- 1,5,2/hscript/Parser.hx 2011-02-22 20:43:28.000000000 +0800
+++ 1,5,2,1/hscript/Parser.hx   2011-02-22 20:49:23.000000000 +0800
@@ -195,7 +195,7 @@
            tk = token();
            switch( tk ) {
            case TBrClose:
-               return parseExprNext(EObject([]));
+               return parseExprNext(EBlock([]));
            case TId(id):
                var tk2 = token();
                tokens.add(tk2);

Original comment by [email protected] on 22 Feb 2011 at 1:40

from hscript.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 15, 2024
This issue was closed by revision r35.

Original comment by [email protected] on 24 Feb 2011 at 6:58

  • Changed state: Fixed

from hscript.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 15, 2024
Nicolas, I suppose the test case and expect result should be:
        test("(function(){})()", null);

My workaround in Interp.hx in addition to r35:
        case EFunction(params,fexpr,name):
            var capturedLocals = duplicate(locals);
            var me = this;
            var f = function(args:Array<Dynamic>) {
                if( args.length != params.length ) throw "Invalid number of parameters";
                var old = me.locals;
                me.locals = me.duplicate(capturedLocals);
                for( i in 0...params.length )
                    me.locals.set(params[i],{ r : args[i] });
                var r = null;
                try {
-                   r = me.exprReturn(fexpr);
+                   switch(fexpr) {
+                       case EObject(v): r = (0==v.length) ? null : me.exprReturn(fexpr);
+                       default: r = me.exprReturn(fexpr);
+                   }
                } catch( e : Dynamic ) {


Original comment by [email protected] on 24 Feb 2011 at 7:39

from hscript.

Related Issues (16)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.