From 33c3611c95d51eea22567aa4b04ce1a3e01977b9 Mon Sep 17 00:00:00 2001 From: tobil4sk <tobil4sk@outlook.com> Date: Wed, 17 Aug 2022 16:09:13 +0100 Subject: [PATCH 1/4] Fix build command --- haxe_libraries/vshaxe-build.hxml | 1 + 1 file changed, 1 insertion(+) diff --git a/haxe_libraries/vshaxe-build.hxml b/haxe_libraries/vshaxe-build.hxml index 6758abd..fed902a 100644 --- a/haxe_libraries/vshaxe-build.hxml +++ b/haxe_libraries/vshaxe-build.hxml @@ -1,2 +1,3 @@ -D vshaxe-build=0.0.1 +# @run: haxelib run-dir vshaxe-build . -cp . \ No newline at end of file From 2e7f54b3b4d0afc6739b732028ca9d4b431b2568 Mon Sep 17 00:00:00 2001 From: tobil4sk <tobil4sk@outlook.com> Date: Wed, 17 Aug 2022 17:47:11 +0100 Subject: [PATCH 2/4] Update to haxe 4.2.5 and update lib dependencies --- .haxerc | 2 +- extension.js | 1011 ++++++++++++++++++++----------- haxe_libraries/hxjsonast.hxml | 6 +- haxe_libraries/hxnodejs.hxml | 13 +- haxe_libraries/json2object.hxml | 6 +- run.n | Bin 104737 -> 114642 bytes 6 files changed, 658 insertions(+), 380 deletions(-) diff --git a/.haxerc b/.haxerc index 8b6b442..7140546 100644 --- a/.haxerc +++ b/.haxerc @@ -1,4 +1,4 @@ { - "version": "4.0.5", + "version": "4.2.5", "resolveLibs": "scoped" } \ No newline at end of file diff --git a/extension.js b/extension.js index c42d2a0..204ba83 100644 --- a/extension.js +++ b/extension.js @@ -1,4 +1,3 @@ -// Generated by Haxe 4.0.0-rc.4+97f1e1a9d (function ($hx_exports, $global) { "use strict"; var $estr = function() { return js_Boot.__string_rec(this,''); },$hxEnums = $hxEnums || {},$_; function $extend(from, fields) { @@ -28,12 +27,8 @@ HxOverrides.substr = function(s,pos,len) { } return s.substr(pos,len); }; -HxOverrides.iter = function(a) { - return { cur : 0, arr : a, hasNext : function() { - return this.cur < this.arr.length; - }, next : function() { - return this.arr[this.cur++]; - }}; +HxOverrides.now = function() { + return Date.now(); }; var json2object_reader_BaseParser = function(errors,putils,errorType) { this.errors = errors; @@ -49,15 +44,15 @@ json2object_reader_BaseParser.prototype = { this.putils = new json2object_PositionUtils(jsonString); this.errors = []; try { - var json = new hxjsonast_Parser(jsonString,filename).parseRec(); + var json = new hxjsonast_Parser(jsonString,filename).doParse(); this.loadJson(json); - } catch( e ) { - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(((e1) instanceof hxjsonast_Error)) { - var e2 = e1; - this.errors.push(json2object_Error.ParserError(e2.message,this.putils.convertPosition(e2.pos))); + } catch( _g ) { + var _g1 = haxe_Exception.caught(_g).unwrap(); + if(((_g1) instanceof hxjsonast_Error)) { + var e = _g1; + this.errors.push(json2object_Error.ParserError(e.message,this.putils.convertPosition(e.pos))); } else { - throw e; + throw _g; } } return this.value; @@ -166,13 +161,16 @@ json2object_reader_BaseParser.prototype = { var tmp; try { tmp = loadJsonFn(j,variable); - } catch( _ ) { - var _1 = ((_) instanceof js__$Boot_HaxeError) ? _.val : _; - if(typeof(_1) == "string") { - var _2 = _1; + } catch( _g2 ) { + var _g3 = haxe_Exception.caught(_g2).unwrap(); + if(js_Boot.__instanceof(_g3,json2object_InternalError)) { + var e = _g3; + if(e != json2object_InternalError.ParsingThrow) { + throw haxe_Exception.thrown(e); + } continue; } else { - throw _; + throw _g2; } } _g.push(tmp); @@ -182,22 +180,40 @@ json2object_reader_BaseParser.prototype = { ,loadJsonObject: function(o,pos,variable) { this.onIncorrectType(pos,variable); } - ,loadObjectField: function(loadJsonFn,field,name,assigned,defaultValue) { + ,loadObjectField: function(loadJsonFn,field,name,assigned,defaultValue,pos) { try { var ret = loadJsonFn(field.value,field.name); this.mapSet(assigned,name,true); return ret; - } catch( _ ) { - var _1 = ((_) instanceof js__$Boot_HaxeError) ? _.val : _; + } catch( _g ) { + var _g1 = haxe_Exception.caught(_g).unwrap(); + if(js_Boot.__instanceof(_g1,json2object_InternalError)) { + var e = _g1; + if(e != json2object_InternalError.ParsingThrow) { + throw haxe_Exception.thrown(e); + } + } else { + var e = _g1; + this.errors.push(json2object_Error.CustomFunctionException(e,pos)); + } } return defaultValue; } - ,loadObjectFieldReflect: function(loadJsonFn,field,name,assigned) { + ,loadObjectFieldReflect: function(loadJsonFn,field,name,assigned,pos) { try { this.value[name] = loadJsonFn(field.value,field.name); this.mapSet(assigned,name,true); - } catch( _ ) { - var _1 = ((_) instanceof js__$Boot_HaxeError) ? _.val : _; + } catch( _g ) { + var _g1 = haxe_Exception.caught(_g).unwrap(); + if(js_Boot.__instanceof(_g1,json2object_InternalError)) { + var e = _g1; + if(e != json2object_InternalError.ParsingThrow) { + throw haxe_Exception.thrown(e); + } + } else { + var e = _g1; + this.errors.push(json2object_Error.CustomFunctionException(e,pos)); + } } } ,objectSetupAssign: function(assigned,keys,values) { @@ -210,11 +226,15 @@ json2object_reader_BaseParser.prototype = { } ,objectErrors: function(assigned,pos) { var lastPos = this.putils.convertPosition(new hxjsonast_Position(pos.file,pos.max - 1,pos.max - 1)); - var s = assigned.keys(); - while(s.hasNext()) { - var s1 = s.next(); - if(!(__map_reserved[s1] != null ? assigned.getReserved(s1) : assigned.h[s1])) { - this.errors.push(json2object_Error.UninitializedVariable(s1,lastPos)); + var h = assigned.h; + var s_h = h; + var s_keys = Object.keys(h); + var s_length = s_keys.length; + var s_current = 0; + while(s_current < s_length) { + var s = s_keys[s_current++]; + if(!assigned.h[s]) { + this.errors.push(json2object_Error.UninitializedVariable(s,lastPos)); } } } @@ -223,23 +243,21 @@ json2object_reader_BaseParser.prototype = { } ,parsingThrow: function() { if(this.errorType != 0) { - throw new js__$Boot_HaxeError("json2object: parsing throw"); + throw haxe_Exception.thrown(json2object_InternalError.ParsingThrow); } } ,objectThrow: function(pos,variable) { if(this.errorType == 2) { - throw new js__$Boot_HaxeError("json2object: parsing throw"); - } else if(this.errorType == 1) { + throw haxe_Exception.thrown(json2object_InternalError.ParsingThrow); + } + if(this.errorType == 1) { this.errors.push(json2object_Error.UninitializedVariable(variable,pos)); } } ,mapSet: function(map,key,value) { - if(__map_reserved[key] != null) { - map.setReserved(key,value); - } else { - map.h[key] = value; - } + map.h[key] = value; } + ,__class__: json2object_reader_BaseParser }; var JsonParser_$1 = function(errors,putils,errorType) { if(errorType == null) { @@ -258,7 +276,6 @@ JsonParser_$1.prototype = $extend(json2object_reader_BaseParser.prototype,{ this.value = null; } ,loadJsonObject: function(o,pos,variable) { - var t = null; var assigned = new haxe_ds_StringMap(); this.objectSetupAssign(assigned,["inherit","mainTarget","targets"],[true,true,false]); this.value = this.getAuto(); @@ -268,13 +285,13 @@ JsonParser_$1.prototype = $extend(json2object_reader_BaseParser.prototype,{ ++_g; switch(field.name) { case "inherit": - this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"inherit",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"inherit",assigned,pos); break; case "mainTarget": - this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"mainTarget",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"mainTarget",assigned,pos); break; case "targets": - this.loadObjectFieldReflect(($_=new JsonParser_$4(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"targets",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$4(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"targets",assigned,pos); break; default: this.errors.push(json2object_Error.UnknownVariable(field.name,this.putils.convertPosition(field.namePos))); @@ -285,6 +302,7 @@ JsonParser_$1.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return { inherit : new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), mainTarget : new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), targets : new JsonParser_$4([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1)))}; } + ,__class__: JsonParser_$1 }); var JsonParser_$10 = function(errors,putils,errorType) { if(errorType == null) { @@ -308,6 +326,7 @@ JsonParser_$10.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$10([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$10 }); var JsonParser_$12 = function(errors,putils,errorType) { if(errorType == null) { @@ -331,6 +350,7 @@ JsonParser_$12.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$12 }); var JsonParser_$15 = function(errors,putils,errorType) { if(errorType == null) { @@ -349,7 +369,6 @@ JsonParser_$15.prototype = $extend(json2object_reader_BaseParser.prototype,{ this.value = null; } ,loadJsonObject: function(o,pos,variable) { - var t = null; var assigned = new haxe_ds_StringMap(); this.objectSetupAssign(assigned,["classPaths","deadCodeElimination","debug","defines","haxelibs","macros","main","noInline","output","packageName","times","workingDirectory"],[true,true,true,true,true,true,true,true,true,true,true,true]); this.value = this.getAuto(); @@ -359,40 +378,40 @@ JsonParser_$15.prototype = $extend(json2object_reader_BaseParser.prototype,{ ++_g; switch(field.name) { case "classPaths": - this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"classPaths",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"classPaths",assigned,pos); break; case "deadCodeElimination": - this.loadObjectFieldReflect(($_=new JsonParser_$24(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"deadCodeElimination",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$24(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"deadCodeElimination",assigned,pos); break; case "debug": - this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"debug",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"debug",assigned,pos); break; case "defines": - this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"defines",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"defines",assigned,pos); break; case "haxelibs": - this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"haxelibs",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"haxelibs",assigned,pos); break; case "macros": - this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"macros",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"macros",assigned,pos); break; case "main": - this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"main",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"main",assigned,pos); break; case "noInline": - this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"noInline",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"noInline",assigned,pos); break; case "output": - this.loadObjectFieldReflect(($_=new JsonParser_$27(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"output",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$27(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"output",assigned,pos); break; case "packageName": - this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"packageName",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"packageName",assigned,pos); break; case "times": - this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"times",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"times",assigned,pos); break; case "workingDirectory": - this.value.workingDirectory = this.loadObjectField(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"workingDirectory",assigned,this.value.workingDirectory); + this.value.workingDirectory = this.loadObjectField(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"workingDirectory",assigned,this.value.workingDirectory,pos); break; default: this.errors.push(json2object_Error.UnknownVariable(field.name,this.putils.convertPosition(field.namePos))); @@ -403,6 +422,7 @@ JsonParser_$15.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return { classPaths : new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), deadCodeElimination : new JsonParser_$24([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), debug : new JsonParser_$9([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), defines : new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), haxelibs : new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), macros : new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), main : new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), noInline : new JsonParser_$9([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), output : new JsonParser_$27([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), packageName : new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), times : new JsonParser_$9([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), workingDirectory : new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1)))}; } + ,__class__: JsonParser_$15 }); var JsonParser_$18 = function(errors,putils,errorType) { if(errorType == null) { @@ -421,7 +441,6 @@ JsonParser_$18.prototype = $extend(json2object_reader_BaseParser.prototype,{ this.value = null; } ,loadJsonObject: function(o,pos,variable) { - var t = null; var assigned = new haxe_ds_StringMap(); this.objectSetupAssign(assigned,["afterBuildCommands","args","beforeBuildCommands","releaseAfterBuildCommands","targetDependencies"],[true,true,true,true,true]); this.value = this.getAuto(); @@ -431,19 +450,19 @@ JsonParser_$18.prototype = $extend(json2object_reader_BaseParser.prototype,{ ++_g; switch(field.name) { case "afterBuildCommands": - this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"afterBuildCommands",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"afterBuildCommands",assigned,pos); break; case "args": - this.loadObjectFieldReflect(($_=new JsonParser_$15(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"args",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$15(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"args",assigned,pos); break; case "beforeBuildCommands": - this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"beforeBuildCommands",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"beforeBuildCommands",assigned,pos); break; case "releaseAfterBuildCommands": - this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"releaseAfterBuildCommands",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"releaseAfterBuildCommands",assigned,pos); break; case "targetDependencies": - this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"targetDependencies",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"targetDependencies",assigned,pos); break; default: this.errors.push(json2object_Error.UnknownVariable(field.name,this.putils.convertPosition(field.namePos))); @@ -458,6 +477,7 @@ JsonParser_$18.prototype = $extend(json2object_reader_BaseParser.prototype,{ var tmp3 = new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); return { afterBuildCommands : tmp, args : { }, beforeBuildCommands : tmp1, releaseAfterBuildCommands : tmp2, targetDependencies : tmp3}; } + ,__class__: JsonParser_$18 }); var JsonParser_$24 = function(errors,putils,errorType) { if(errorType == null) { @@ -482,6 +502,7 @@ JsonParser_$24.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$24([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$24 }); var JsonParser_$27 = function(errors,putils,errorType) { if(errorType == null) { @@ -500,7 +521,6 @@ JsonParser_$27.prototype = $extend(json2object_reader_BaseParser.prototype,{ this.value = null; } ,loadJsonObject: function(o,pos,variable) { - var t = null; var assigned = new haxe_ds_StringMap(); this.objectSetupAssign(assigned,["path","target"],[true,false]); this.value = this.getAuto(); @@ -510,10 +530,10 @@ JsonParser_$27.prototype = $extend(json2object_reader_BaseParser.prototype,{ ++_g; switch(field.name) { case "path": - this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"path",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"path",assigned,pos); break; case "target": - this.loadObjectFieldReflect(($_=new JsonParser_$30(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"target",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$30(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"target",assigned,pos); break; default: this.errors.push(json2object_Error.UnknownVariable(field.name,this.putils.convertPosition(field.namePos))); @@ -524,6 +544,7 @@ JsonParser_$27.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return { path : new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))), target : new JsonParser_$30([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1)))}; } + ,__class__: JsonParser_$27 }); var JsonParser_$3 = function(errors,putils,errorType) { if(errorType == null) { @@ -547,6 +568,7 @@ JsonParser_$3.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$3([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$3 }); var JsonParser_$30 = function(errors,putils,errorType) { if(errorType == null) { @@ -571,6 +593,7 @@ JsonParser_$30.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$30([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$30 }); var JsonParser_$31 = function(errors,putils,errorType) { if(errorType == null) { @@ -594,6 +617,7 @@ JsonParser_$31.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$31([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$31 }); var JsonParser_$4 = function(errors,putils,errorType) { if(errorType == null) { @@ -617,6 +641,7 @@ JsonParser_$4.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$4([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$4 }); var JsonParser_$5 = function(errors,putils,errorType) { if(errorType == null) { @@ -635,7 +660,6 @@ JsonParser_$5.prototype = $extend(json2object_reader_BaseParser.prototype,{ this.value = null; } ,loadJsonObject: function(o,pos,variable) { - var t = null; var assigned = new haxe_ds_StringMap(); this.objectSetupAssign(assigned,["afterBuildCommands","args","beforeBuildCommands","composite","debug","display","inherit","name","releaseAfterBuildCommands","targetDependencies"],[true,true,true,true,true,true,true,false,true,true]); this.value = this.getAuto(); @@ -645,34 +669,34 @@ JsonParser_$5.prototype = $extend(json2object_reader_BaseParser.prototype,{ ++_g; switch(field.name) { case "afterBuildCommands": - this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"afterBuildCommands",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"afterBuildCommands",assigned,pos); break; case "args": - this.loadObjectFieldReflect(($_=new JsonParser_$15(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"args",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$15(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"args",assigned,pos); break; case "beforeBuildCommands": - this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"beforeBuildCommands",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"beforeBuildCommands",assigned,pos); break; case "composite": - this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"composite",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$9(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"composite",assigned,pos); break; case "debug": - this.loadObjectFieldReflect(($_=new JsonParser_$18(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"debug",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$18(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"debug",assigned,pos); break; case "display": - this.loadObjectFieldReflect(($_=new JsonParser_$18(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"display",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$18(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"display",assigned,pos); break; case "inherit": - this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"inherit",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$3(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"inherit",assigned,pos); break; case "name": - this.loadObjectFieldReflect(($_=new JsonParser_$10(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"name",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$10(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"name",assigned,pos); break; case "releaseAfterBuildCommands": - this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"releaseAfterBuildCommands",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$7(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"releaseAfterBuildCommands",assigned,pos); break; case "targetDependencies": - this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"targetDependencies",assigned); + this.loadObjectFieldReflect(($_=new JsonParser_$12(this.errors,this.putils,1),$bind($_,$_.loadJson)),field,"targetDependencies",assigned,pos); break; default: this.errors.push(json2object_Error.UnknownVariable(field.name,this.putils.convertPosition(field.namePos))); @@ -690,6 +714,7 @@ JsonParser_$5.prototype = $extend(json2object_reader_BaseParser.prototype,{ var tmp6 = new JsonParser_$12([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); return { afterBuildCommands : tmp, args : { }, beforeBuildCommands : tmp1, composite : tmp2, debug : { }, display : { }, inherit : tmp3, name : tmp4, releaseAfterBuildCommands : tmp5, targetDependencies : tmp6}; } + ,__class__: JsonParser_$5 }); var JsonParser_$7 = function(errors,putils,errorType) { if(errorType == null) { @@ -713,6 +738,7 @@ JsonParser_$7.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$7([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$7 }); var JsonParser_$9 = function(errors,putils,errorType) { if(errorType == null) { @@ -736,6 +762,7 @@ JsonParser_$9.prototype = $extend(json2object_reader_BaseParser.prototype,{ ,getAuto: function() { return new JsonParser_$9([],this.putils,0).loadJson(new hxjsonast_Json(hxjsonast_JsonValue.JNull,new hxjsonast_Position("",0,1))); } + ,__class__: JsonParser_$9 }); Math.__name__ = true; var Std = function() { }; @@ -744,16 +771,32 @@ Std.string = function(s) { return js_Boot.__string_rec(s,""); }; Std.parseInt = function(x) { - var v = parseInt(x, x && x[0]=="0" && (x[1]=="x" || x[1]=="X") ? 16 : 10); - if(isNaN(v)) { - return null; + if(x != null) { + var _g = 0; + var _g1 = x.length; + while(_g < _g1) { + var i = _g++; + var c = x.charCodeAt(i); + if(c <= 8 || c >= 14 && c != 32 && c != 45) { + var nc = x.charCodeAt(i + 1); + var v = parseInt(x,nc == 120 || nc == 88 ? 16 : 10); + if(isNaN(v)) { + return null; + } else { + return v; + } + } + } } - return v; + return null; }; var StringBuf = function() { this.b = ""; }; StringBuf.__name__ = true; +StringBuf.prototype = { + __class__: StringBuf +}; var StringTools = function() { }; StringTools.__name__ = true; StringTools.startsWith = function(s,start) { @@ -818,6 +861,7 @@ _$Sys_FileOutput.prototype = $extend(haxe_io_Output.prototype,{ ,close: function() { js_node_Fs.closeSync(this.fd); } + ,__class__: _$Sys_FileOutput }); var haxe_io_Input = function() { }; haxe_io_Input.__name__ = true; @@ -828,15 +872,15 @@ _$Sys_FileInput.__name__ = true; _$Sys_FileInput.__super__ = haxe_io_Input; _$Sys_FileInput.prototype = $extend(haxe_io_Input.prototype,{ readByte: function() { - var buf = new js_node_buffer_Buffer(1); + var buf = js_node_buffer_Buffer.alloc(1); try { js_node_Fs.readSync(this.fd,buf,0,1,null); - } catch( e ) { - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(e1.code == "EOF") { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); + } catch( _g ) { + var e = haxe_Exception.caught(_g).unwrap(); + if(e.code == "EOF") { + throw haxe_Exception.thrown(new haxe_io_Eof()); } else { - throw new js__$Boot_HaxeError(haxe_io_Error.Custom(e1)); + throw haxe_Exception.thrown(haxe_io_Error.Custom(e)); } } return buf[0]; @@ -846,67 +890,84 @@ _$Sys_FileInput.prototype = $extend(haxe_io_Input.prototype,{ var buf = js_node_buffer_Buffer.from(data.buffer,data.byteOffset,s.length); try { return js_node_Fs.readSync(this.fd,buf,pos,len,null); - } catch( e ) { - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(e1.code == "EOF") { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); + } catch( _g ) { + var e = haxe_Exception.caught(_g).unwrap(); + if(e.code == "EOF") { + throw haxe_Exception.thrown(new haxe_io_Eof()); } else { - throw new js__$Boot_HaxeError(haxe_io_Error.Custom(e1)); + throw haxe_Exception.thrown(haxe_io_Error.Custom(e)); } } } ,close: function() { js_node_Fs.closeSync(this.fd); } + ,__class__: _$Sys_FileInput }); var Vscode = require("vscode"); -var haxe_ds_Option = $hxEnums["haxe.ds.Option"] = { __ename__ : true, __constructs__ : ["Some","None"] - ,Some: ($_=function(v) { return {_hx_index:0,v:v,__enum__:"haxe.ds.Option",toString:$estr}; },$_.__params__ = ["v"],$_) - ,None: {_hx_index:1,__enum__:"haxe.ds.Option",toString:$estr} -}; -var haxe_ds_StringMap = function() { - this.h = { }; +var haxe_IMap = function() { }; +haxe_IMap.__name__ = true; +haxe_IMap.__isInterface__ = true; +var haxe_Exception = function(message,previous,native) { + Error.call(this,message); + this.message = message; + this.__previousException = previous; + this.__nativeException = native != null ? native : this; }; -haxe_ds_StringMap.__name__ = true; -haxe_ds_StringMap.prototype = { - setReserved: function(key,value) { - if(this.rh == null) { - this.rh = { }; - } - this.rh["$" + key] = value; +haxe_Exception.__name__ = true; +haxe_Exception.caught = function(value) { + if(((value) instanceof haxe_Exception)) { + return value; + } else if(((value) instanceof Error)) { + return new haxe_Exception(value.message,null,value); + } else { + return new haxe_ValueException(value,null,value); } - ,getReserved: function(key) { - if(this.rh == null) { - return null; - } else { - return this.rh["$" + key]; - } +}; +haxe_Exception.thrown = function(value) { + if(((value) instanceof haxe_Exception)) { + return value.get_native(); + } else if(((value) instanceof Error)) { + return value; + } else { + var e = new haxe_ValueException(value); + return e; } - ,existsReserved: function(key) { - if(this.rh == null) { - return false; - } - return this.rh.hasOwnProperty("$" + key); +}; +haxe_Exception.__super__ = Error; +haxe_Exception.prototype = $extend(Error.prototype,{ + unwrap: function() { + return this.__nativeException; } - ,keys: function() { - return HxOverrides.iter(this.arrayKeys()); + ,get_native: function() { + return this.__nativeException; } - ,arrayKeys: function() { - var out = []; - for( var key in this.h ) { - if(this.h.hasOwnProperty(key)) { - out.push(key); - } - } - if(this.rh != null) { - for( var key in this.rh ) { - if(key.charCodeAt(0) == 36) { - out.push(key.substr(1)); - } - } - } - return out; + ,__class__: haxe_Exception +}); +var haxe_ValueException = function(value,previous,native) { + haxe_Exception.call(this,String(value),previous,native); + this.value = value; +}; +haxe_ValueException.__name__ = true; +haxe_ValueException.__super__ = haxe_Exception; +haxe_ValueException.prototype = $extend(haxe_Exception.prototype,{ + unwrap: function() { + return this.value; } + ,__class__: haxe_ValueException +}); +var haxe_ds_Option = $hxEnums["haxe.ds.Option"] = { __ename__:true,__constructs__:null + ,Some: ($_=function(v) { return {_hx_index:0,v:v,__enum__:"haxe.ds.Option",toString:$estr}; },$_._hx_name="Some",$_.__params__ = ["v"],$_) + ,None: {_hx_name:"None",_hx_index:1,__enum__:"haxe.ds.Option",toString:$estr} +}; +haxe_ds_Option.__constructs__ = [haxe_ds_Option.Some,haxe_ds_Option.None]; +var haxe_ds_StringMap = function() { + this.h = Object.create(null); +}; +haxe_ds_StringMap.__name__ = true; +haxe_ds_StringMap.__interfaces__ = [haxe_IMap]; +haxe_ds_StringMap.prototype = { + __class__: haxe_ds_StringMap }; var haxe_io_Bytes = function(data) { this.length = data.byteLength; @@ -916,10 +977,14 @@ var haxe_io_Bytes = function(data) { data.bytes = this.b; }; haxe_io_Bytes.__name__ = true; -var haxe_io_Encoding = $hxEnums["haxe.io.Encoding"] = { __ename__ : true, __constructs__ : ["UTF8","RawNative"] - ,UTF8: {_hx_index:0,__enum__:"haxe.io.Encoding",toString:$estr} - ,RawNative: {_hx_index:1,__enum__:"haxe.io.Encoding",toString:$estr} +haxe_io_Bytes.prototype = { + __class__: haxe_io_Bytes +}; +var haxe_io_Encoding = $hxEnums["haxe.io.Encoding"] = { __ename__:true,__constructs__:null + ,UTF8: {_hx_name:"UTF8",_hx_index:0,__enum__:"haxe.io.Encoding",toString:$estr} + ,RawNative: {_hx_name:"RawNative",_hx_index:1,__enum__:"haxe.io.Encoding",toString:$estr} }; +haxe_io_Encoding.__constructs__ = [haxe_io_Encoding.UTF8,haxe_io_Encoding.RawNative]; var haxe_io_Eof = function() { }; haxe_io_Eof.__name__ = true; @@ -927,13 +992,15 @@ haxe_io_Eof.prototype = { toString: function() { return "Eof"; } + ,__class__: haxe_io_Eof }; -var haxe_io_Error = $hxEnums["haxe.io.Error"] = { __ename__ : true, __constructs__ : ["Blocked","Overflow","OutsideBounds","Custom"] - ,Blocked: {_hx_index:0,__enum__:"haxe.io.Error",toString:$estr} - ,Overflow: {_hx_index:1,__enum__:"haxe.io.Error",toString:$estr} - ,OutsideBounds: {_hx_index:2,__enum__:"haxe.io.Error",toString:$estr} - ,Custom: ($_=function(e) { return {_hx_index:3,e:e,__enum__:"haxe.io.Error",toString:$estr}; },$_.__params__ = ["e"],$_) +var haxe_io_Error = $hxEnums["haxe.io.Error"] = { __ename__:true,__constructs__:null + ,Blocked: {_hx_name:"Blocked",_hx_index:0,__enum__:"haxe.io.Error",toString:$estr} + ,Overflow: {_hx_name:"Overflow",_hx_index:1,__enum__:"haxe.io.Error",toString:$estr} + ,OutsideBounds: {_hx_name:"OutsideBounds",_hx_index:2,__enum__:"haxe.io.Error",toString:$estr} + ,Custom: ($_=function(e) { return {_hx_index:3,e:e,__enum__:"haxe.io.Error",toString:$estr}; },$_._hx_name="Custom",$_.__params__ = ["e"],$_) }; +haxe_io_Error.__constructs__ = [haxe_io_Error.Blocked,haxe_io_Error.Overflow,haxe_io_Error.OutsideBounds,haxe_io_Error.Custom]; var haxe_io_Path = function() { }; haxe_io_Path.__name__ = true; haxe_io_Path.join = function(paths) { @@ -947,17 +1014,17 @@ haxe_io_Path.join = function(paths) { _g.push(v); } } - var paths1 = _g; - if(paths1.length == 0) { + var paths = _g; + if(paths.length == 0) { return ""; } - var path = paths1[0]; - var _g3 = 1; - var _g11 = paths1.length; - while(_g3 < _g11) { - var i = _g3++; + var path = paths[0]; + var _g = 1; + var _g1 = paths.length; + while(_g < _g1) { + var i = _g++; path = haxe_io_Path.addTrailingSlash(path); - path += paths1[i]; + path += paths[i]; } return haxe_io_Path.normalize(path); }; @@ -1049,30 +1116,54 @@ haxe_io_Path.addTrailingSlash = function(path) { return path; } }; +var haxe_iterators_ArrayIterator = function(array) { + this.current = 0; + this.array = array; +}; +haxe_iterators_ArrayIterator.__name__ = true; +haxe_iterators_ArrayIterator.prototype = { + hasNext: function() { + return this.current < this.array.length; + } + ,next: function() { + return this.array[this.current++]; + } + ,__class__: haxe_iterators_ArrayIterator +}; var hxjsonast_Error = function(message,pos) { this.message = message; this.pos = pos; }; hxjsonast_Error.__name__ = true; +hxjsonast_Error.prototype = { + __class__: hxjsonast_Error +}; var hxjsonast_Json = function(value,pos) { this.value = value; this.pos = pos; }; hxjsonast_Json.__name__ = true; -var hxjsonast_JsonValue = $hxEnums["hxjsonast.JsonValue"] = { __ename__ : true, __constructs__ : ["JString","JNumber","JObject","JArray","JBool","JNull"] - ,JString: ($_=function(s) { return {_hx_index:0,s:s,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_.__params__ = ["s"],$_) - ,JNumber: ($_=function(s) { return {_hx_index:1,s:s,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_.__params__ = ["s"],$_) - ,JObject: ($_=function(fields) { return {_hx_index:2,fields:fields,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_.__params__ = ["fields"],$_) - ,JArray: ($_=function(values) { return {_hx_index:3,values:values,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_.__params__ = ["values"],$_) - ,JBool: ($_=function(b) { return {_hx_index:4,b:b,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_.__params__ = ["b"],$_) - ,JNull: {_hx_index:5,__enum__:"hxjsonast.JsonValue",toString:$estr} -}; +hxjsonast_Json.prototype = { + __class__: hxjsonast_Json +}; +var hxjsonast_JsonValue = $hxEnums["hxjsonast.JsonValue"] = { __ename__:true,__constructs__:null + ,JString: ($_=function(s) { return {_hx_index:0,s:s,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_._hx_name="JString",$_.__params__ = ["s"],$_) + ,JNumber: ($_=function(s) { return {_hx_index:1,s:s,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_._hx_name="JNumber",$_.__params__ = ["s"],$_) + ,JObject: ($_=function(fields) { return {_hx_index:2,fields:fields,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_._hx_name="JObject",$_.__params__ = ["fields"],$_) + ,JArray: ($_=function(values) { return {_hx_index:3,values:values,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_._hx_name="JArray",$_.__params__ = ["values"],$_) + ,JBool: ($_=function(b) { return {_hx_index:4,b:b,__enum__:"hxjsonast.JsonValue",toString:$estr}; },$_._hx_name="JBool",$_.__params__ = ["b"],$_) + ,JNull: {_hx_name:"JNull",_hx_index:5,__enum__:"hxjsonast.JsonValue",toString:$estr} +}; +hxjsonast_JsonValue.__constructs__ = [hxjsonast_JsonValue.JString,hxjsonast_JsonValue.JNumber,hxjsonast_JsonValue.JObject,hxjsonast_JsonValue.JArray,hxjsonast_JsonValue.JBool,hxjsonast_JsonValue.JNull]; var hxjsonast_JObjectField = function(name,namePos,value) { this.name = name; this.namePos = namePos; this.value = value; }; hxjsonast_JObjectField.__name__ = true; +hxjsonast_JObjectField.prototype = { + __class__: hxjsonast_JObjectField +}; var hxjsonast_Parser = function(source,filename) { this.source = source; this.filename = filename; @@ -1080,10 +1171,28 @@ var hxjsonast_Parser = function(source,filename) { }; hxjsonast_Parser.__name__ = true; hxjsonast_Parser.parse = function(source,filename) { - return new hxjsonast_Parser(source,filename).parseRec(); + return new hxjsonast_Parser(source,filename).doParse(); }; hxjsonast_Parser.prototype = { - parseRec: function() { + doParse: function() { + var result = this.parseRec(); + var c; + while(true) { + c = this.source.charCodeAt(this.pos++); + var c1 = c; + if(!(c1 == c1)) { + break; + } + switch(c) { + case 9:case 10:case 13:case 32: + break; + default: + this.invalidChar(); + } + } + return result; + } + ,parseRec: function() { while(true) { var c = this.source.charCodeAt(this.pos++); switch(c) { @@ -1112,7 +1221,7 @@ hxjsonast_Parser.prototype = { pm = true; break; case 46: - if(minus || point) { + if(minus || point || e) { this.invalidNumber(start); } digit = false; @@ -1209,7 +1318,7 @@ hxjsonast_Parser.prototype = { return new hxjsonast_Json(hxjsonast_JsonValue.JBool(true),new hxjsonast_Position(this.filename,save3 - 1,this.pos)); case 123: var fields = []; - var names = new haxe_ds_StringMap(); + var names_h = Object.create(null); var field = null; var fieldPos = null; var comma1 = null; @@ -1218,18 +1327,16 @@ hxjsonast_Parser.prototype = { case 9:case 10:case 13:case 32: break; case 34: - if(comma1) { + if(field != null || comma1) { this.invalidChar(); } var fieldStartPos = this.pos - 1; field = this.parseString(); fieldPos = new hxjsonast_Position(this.filename,fieldStartPos,this.pos); - if(__map_reserved[field] != null ? names.existsReserved(field) : names.h.hasOwnProperty(field)) { - throw new js__$Boot_HaxeError(new hxjsonast_Error("Duplicate field name \"" + field + "\"",fieldPos)); - } else if(__map_reserved[field] != null) { - names.setReserved(field,true); + if(Object.prototype.hasOwnProperty.call(names_h,field)) { + throw haxe_Exception.thrown(new hxjsonast_Error("Duplicate field name \"" + field + "\"",fieldPos)); } else { - names.h[field] = true; + names_h[field] = true; } break; case 44: @@ -1303,20 +1410,20 @@ hxjsonast_Parser.prototype = { buf.b += String.fromCodePoint(uc); break; default: - throw new js__$Boot_HaxeError(new hxjsonast_Error("Invalid escape sequence \\" + String.fromCodePoint(c),new hxjsonast_Position(this.filename,this.pos - 2,this.pos))); + throw haxe_Exception.thrown(new hxjsonast_Error("Invalid escape sequence \\" + String.fromCodePoint(c),new hxjsonast_Position(this.filename,this.pos - 2,this.pos))); } start = this.pos; } else if(c != c) { this.pos--; - throw new js__$Boot_HaxeError(new hxjsonast_Error("Unclosed string",new hxjsonast_Position(this.filename,start - 1,this.pos))); + throw haxe_Exception.thrown(new hxjsonast_Error("Unclosed string",new hxjsonast_Position(this.filename,start - 1,this.pos))); } } if(buf == null) { return HxOverrides.substr(this.source,start,this.pos - start - 1); } else { - var s1 = this.source; - var len1 = this.pos - start - 1; - buf.b += len1 == null ? HxOverrides.substr(s1,start,null) : HxOverrides.substr(s1,start,len1); + var s = this.source; + var len = this.pos - start - 1; + buf.b += len == null ? HxOverrides.substr(s,start,null) : HxOverrides.substr(s,start,len); return buf.b; } } @@ -1339,7 +1446,7 @@ hxjsonast_Parser.prototype = { pm = true; break; case 46: - if(minus || point) { + if(minus || point || e) { this.invalidNumber(start); } digit = false; @@ -1397,11 +1504,12 @@ hxjsonast_Parser.prototype = { } ,invalidChar: function() { this.pos--; - throw new js__$Boot_HaxeError(new hxjsonast_Error("Invalid character: " + this.source.charAt(this.pos),new hxjsonast_Position(this.filename,this.pos,this.pos + 1))); + throw haxe_Exception.thrown(new hxjsonast_Error("Invalid character: " + this.source.charAt(this.pos),new hxjsonast_Position(this.filename,this.pos,this.pos + 1))); } ,invalidNumber: function(start) { - throw new js__$Boot_HaxeError(new hxjsonast_Error("Invalid number: " + this.source.substring(start,this.pos),new hxjsonast_Position(this.filename,start,this.pos))); + throw haxe_Exception.thrown(new hxjsonast_Error("Invalid number: " + this.source.substring(start,this.pos),new hxjsonast_Position(this.filename,start,this.pos))); } + ,__class__: hxjsonast_Parser }; var hxjsonast_Position = function(file,min,max) { this.file = file; @@ -1409,19 +1517,28 @@ var hxjsonast_Position = function(file,min,max) { this.max = max; }; hxjsonast_Position.__name__ = true; -var js__$Boot_HaxeError = function(val) { - Error.call(this); - this.val = val; - if(Error.captureStackTrace) { - Error.captureStackTrace(this,js__$Boot_HaxeError); - } +hxjsonast_Position.prototype = { + __class__: hxjsonast_Position }; -js__$Boot_HaxeError.__name__ = true; -js__$Boot_HaxeError.__super__ = Error; -js__$Boot_HaxeError.prototype = $extend(Error.prototype,{ -}); var js_Boot = function() { }; js_Boot.__name__ = true; +js_Boot.getClass = function(o) { + if(o == null) { + return null; + } else if(((o) instanceof Array)) { + return Array; + } else { + var cl = o.__class__; + if(cl != null) { + return cl; + } + var name = js_Boot.__nativeClassName(o); + if(name != null) { + return js_Boot.__resolveNativeClass(name); + } + return null; + } +}; js_Boot.__string_rec = function(o,s) { if(o == null) { return "null"; @@ -1439,8 +1556,8 @@ js_Boot.__string_rec = function(o,s) { case "object": if(o.__enum__) { var e = $hxEnums[o.__enum__]; - var n = e.__constructs__[o._hx_index]; - var con = e[n]; + var con = e.__constructs__[o._hx_index]; + var n = con._hx_name; if(con.__params__) { s = s + "\t"; return n + "(" + ((function($this) { @@ -1468,10 +1585,10 @@ js_Boot.__string_rec = function(o,s) { if(((o) instanceof Array)) { var str = "["; s += "\t"; - var _g3 = 0; - var _g11 = o.length; - while(_g3 < _g11) { - var i = _g3++; + var _g = 0; + var _g1 = o.length; + while(_g < _g1) { + var i = _g++; str += (i > 0 ? "," : "") + js_Boot.__string_rec(o[i],s); } str += "]"; @@ -1480,8 +1597,7 @@ js_Boot.__string_rec = function(o,s) { var tostr; try { tostr = o.toString; - } catch( e1 ) { - var e2 = ((e1) instanceof js__$Boot_HaxeError) ? e1.val : e1; + } catch( _g ) { return "???"; } if(tostr != null && tostr != Object.toString && typeof(tostr) == "function") { @@ -1490,7 +1606,7 @@ js_Boot.__string_rec = function(o,s) { return s2; } } - var str1 = "{\n"; + var str = "{\n"; s += "\t"; var hasp = o.hasOwnProperty != null; var k = null; @@ -1501,30 +1617,168 @@ js_Boot.__string_rec = function(o,s) { if(k == "prototype" || k == "__class__" || k == "__super__" || k == "__interfaces__" || k == "__properties__") { continue; } - if(str1.length != 2) { - str1 += ", \n"; + if(str.length != 2) { + str += ", \n"; } - str1 += s + k + " : " + js_Boot.__string_rec(o[k],s); + str += s + k + " : " + js_Boot.__string_rec(o[k],s); } s = s.substring(1); - str1 += "\n" + s + "}"; - return str1; + str += "\n" + s + "}"; + return str; case "string": return o; default: return String(o); } }; +js_Boot.__interfLoop = function(cc,cl) { + if(cc == null) { + return false; + } + if(cc == cl) { + return true; + } + var intf = cc.__interfaces__; + if(intf != null) { + var _g = 0; + var _g1 = intf.length; + while(_g < _g1) { + var i = _g++; + var i1 = intf[i]; + if(i1 == cl || js_Boot.__interfLoop(i1,cl)) { + return true; + } + } + } + return js_Boot.__interfLoop(cc.__super__,cl); +}; +js_Boot.__instanceof = function(o,cl) { + if(cl == null) { + return false; + } + switch(cl) { + case Array: + return ((o) instanceof Array); + case Bool: + return typeof(o) == "boolean"; + case Dynamic: + return o != null; + case Float: + return typeof(o) == "number"; + case Int: + if(typeof(o) == "number") { + return ((o | 0) === o); + } else { + return false; + } + break; + case String: + return typeof(o) == "string"; + default: + if(o != null) { + if(typeof(cl) == "function") { + if(js_Boot.__downcastCheck(o,cl)) { + return true; + } + } else if(typeof(cl) == "object" && js_Boot.__isNativeObj(cl)) { + if(((o) instanceof cl)) { + return true; + } + } + } else { + return false; + } + if(cl == Class ? o.__name__ != null : false) { + return true; + } + if(cl == Enum ? o.__ename__ != null : false) { + return true; + } + return o.__enum__ != null ? $hxEnums[o.__enum__] == cl : false; + } +}; +js_Boot.__downcastCheck = function(o,cl) { + if(!((o) instanceof cl)) { + if(cl.__isInterface__) { + return js_Boot.__interfLoop(js_Boot.getClass(o),cl); + } else { + return false; + } + } else { + return true; + } +}; +js_Boot.__nativeClassName = function(o) { + var name = js_Boot.__toStr.call(o).slice(8,-1); + if(name == "Object" || name == "Function" || name == "Math" || name == "JSON") { + return null; + } + return name; +}; +js_Boot.__isNativeObj = function(o) { + return js_Boot.__nativeClassName(o) != null; +}; +js_Boot.__resolveNativeClass = function(name) { + return $global[name]; +}; var js_node_ChildProcess = require("child_process"); var js_node_Fs = require("fs"); +var js_node_KeyValue = {}; +js_node_KeyValue.get_key = function(this1) { + return this1[0]; +}; +js_node_KeyValue.get_value = function(this1) { + return this1[1]; +}; var js_node_buffer_Buffer = require("buffer").Buffer; -var json2object_Error = $hxEnums["json2object.Error"] = { __ename__ : true, __constructs__ : ["IncorrectType","IncorrectEnumValue","InvalidEnumConstructor","UninitializedVariable","UnknownVariable","ParserError"] - ,IncorrectType: ($_=function(variable,expected,pos) { return {_hx_index:0,variable:variable,expected:expected,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_.__params__ = ["variable","expected","pos"],$_) - ,IncorrectEnumValue: ($_=function(value,expected,pos) { return {_hx_index:1,value:value,expected:expected,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_.__params__ = ["value","expected","pos"],$_) - ,InvalidEnumConstructor: ($_=function(value,expected,pos) { return {_hx_index:2,value:value,expected:expected,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_.__params__ = ["value","expected","pos"],$_) - ,UninitializedVariable: ($_=function(variable,pos) { return {_hx_index:3,variable:variable,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_.__params__ = ["variable","pos"],$_) - ,UnknownVariable: ($_=function(variable,pos) { return {_hx_index:4,variable:variable,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_.__params__ = ["variable","pos"],$_) - ,ParserError: ($_=function(message,pos) { return {_hx_index:5,message:message,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_.__params__ = ["message","pos"],$_) +var js_node_stream_WritableNewOptionsAdapter = {}; +js_node_stream_WritableNewOptionsAdapter.from = function(options) { + if(!Object.prototype.hasOwnProperty.call(options,"final")) { + Object.defineProperty(options,"final",{ get : function() { + return options.final_; + }}); + } + return options; +}; +var js_node_url_URLSearchParamsEntry = {}; +js_node_url_URLSearchParamsEntry._new = function(name,value) { + var this1 = [name,value]; + return this1; +}; +js_node_url_URLSearchParamsEntry.get_name = function(this1) { + return this1[0]; +}; +js_node_url_URLSearchParamsEntry.get_value = function(this1) { + return this1[1]; +}; +var json2object_Error = $hxEnums["json2object.Error"] = { __ename__:true,__constructs__:null + ,IncorrectType: ($_=function(variable,expected,pos) { return {_hx_index:0,variable:variable,expected:expected,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="IncorrectType",$_.__params__ = ["variable","expected","pos"],$_) + ,IncorrectEnumValue: ($_=function(value,expected,pos) { return {_hx_index:1,value:value,expected:expected,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="IncorrectEnumValue",$_.__params__ = ["value","expected","pos"],$_) + ,InvalidEnumConstructor: ($_=function(value,expected,pos) { return {_hx_index:2,value:value,expected:expected,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="InvalidEnumConstructor",$_.__params__ = ["value","expected","pos"],$_) + ,UninitializedVariable: ($_=function(variable,pos) { return {_hx_index:3,variable:variable,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="UninitializedVariable",$_.__params__ = ["variable","pos"],$_) + ,UnknownVariable: ($_=function(variable,pos) { return {_hx_index:4,variable:variable,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="UnknownVariable",$_.__params__ = ["variable","pos"],$_) + ,ParserError: ($_=function(message,pos) { return {_hx_index:5,message:message,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="ParserError",$_.__params__ = ["message","pos"],$_) + ,CustomFunctionException: ($_=function(e,pos) { return {_hx_index:6,e:e,pos:pos,__enum__:"json2object.Error",toString:$estr}; },$_._hx_name="CustomFunctionException",$_.__params__ = ["e","pos"],$_) +}; +json2object_Error.__constructs__ = [json2object_Error.IncorrectType,json2object_Error.IncorrectEnumValue,json2object_Error.InvalidEnumConstructor,json2object_Error.UninitializedVariable,json2object_Error.UnknownVariable,json2object_Error.ParserError,json2object_Error.CustomFunctionException]; +var json2object_InternalError = $hxEnums["json2object.InternalError"] = { __ename__:true,__constructs__:null + ,AbstractNoJsonRepresentation: ($_=function(name) { return {_hx_index:0,name:name,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="AbstractNoJsonRepresentation",$_.__params__ = ["name"],$_) + ,CannotGenerateSchema: ($_=function(name) { return {_hx_index:1,name:name,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="CannotGenerateSchema",$_.__params__ = ["name"],$_) + ,HandleExpr: {_hx_name:"HandleExpr",_hx_index:2,__enum__:"json2object.InternalError",toString:$estr} + ,ParsingThrow: {_hx_name:"ParsingThrow",_hx_index:3,__enum__:"json2object.InternalError",toString:$estr} + ,UnsupportedAbstractEnumType: ($_=function(name) { return {_hx_index:4,name:name,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="UnsupportedAbstractEnumType",$_.__params__ = ["name"],$_) + ,UnsupportedEnumAbstractValue: ($_=function(name) { return {_hx_index:5,name:name,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="UnsupportedEnumAbstractValue",$_.__params__ = ["name"],$_) + ,UnsupportedMapKeyType: ($_=function(name) { return {_hx_index:6,name:name,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="UnsupportedMapKeyType",$_.__params__ = ["name"],$_) + ,UnsupportedSchemaObjectType: ($_=function(name) { return {_hx_index:7,name:name,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="UnsupportedSchemaObjectType",$_.__params__ = ["name"],$_) + ,UnsupportedSchemaType: ($_=function(type) { return {_hx_index:8,type:type,__enum__:"json2object.InternalError",toString:$estr}; },$_._hx_name="UnsupportedSchemaType",$_.__params__ = ["type"],$_) +}; +json2object_InternalError.__constructs__ = [json2object_InternalError.AbstractNoJsonRepresentation,json2object_InternalError.CannotGenerateSchema,json2object_InternalError.HandleExpr,json2object_InternalError.ParsingThrow,json2object_InternalError.UnsupportedAbstractEnumType,json2object_InternalError.UnsupportedEnumAbstractValue,json2object_InternalError.UnsupportedMapKeyType,json2object_InternalError.UnsupportedSchemaObjectType,json2object_InternalError.UnsupportedSchemaType]; +var json2object_CustomFunctionError = function(message) { + this.message = message; +}; +json2object_CustomFunctionError.__name__ = true; +json2object_CustomFunctionError.prototype = { + __class__: json2object_CustomFunctionError }; var json2object_ErrorUtils = function() { }; json2object_ErrorUtils.__name__ = true; @@ -1532,37 +1786,42 @@ json2object_ErrorUtils.convertError = function(e) { var pos; switch(e._hx_index) { case 0: - var _g3 = e.expected; - var _g2 = e.variable; + var _g = e.variable; + var _g = e.expected; var pos1 = e.pos; pos = pos1; break; case 1: - var _g11 = e.expected; - var _g10 = e.value; - var pos2 = e.pos; - pos = pos2; + var _g = e.value; + var _g = e.expected; + var pos1 = e.pos; + pos = pos1; break; case 2: - var _g6 = e.expected; - var _g5 = e.value; - var pos3 = e.pos; - pos = pos3; + var _g = e.value; + var _g = e.expected; + var pos1 = e.pos; + pos = pos1; break; case 3: var _g = e.variable; - var pos4 = e.pos; - pos = pos4; + var pos1 = e.pos; + pos = pos1; break; case 4: - var _g8 = e.variable; - var pos5 = e.pos; - pos = pos5; + var _g = e.variable; + var pos1 = e.pos; + pos = pos1; break; case 5: - var _g13 = e.message; - var pos6 = e.pos; - pos = pos6; + var _g = e.message; + var pos1 = e.pos; + pos = pos1; + break; + case 6: + var _g = e.e; + var pos1 = e.pos; + pos = pos1; break; } var header = ""; @@ -1576,32 +1835,36 @@ json2object_ErrorUtils.convertError = function(e) { } switch(e._hx_index) { case 0: - var _g19 = e.pos; - var expected = e.expected; + var _g = e.pos; var variable = e.variable; + var expected = e.expected; return header + ("Variable '" + variable + "' should be of type '" + expected + "'"); case 1: - var _g27 = e.pos; - var expected1 = e.expected; - var variable1 = e.value; - return header + ("Identifier '" + variable1 + "' isn't part of '" + expected1 + "'"); + var _g = e.pos; + var variable = e.value; + var expected = e.expected; + return header + ("Identifier '" + variable + "' isn't part of '" + expected + "'"); case 2: - var _g22 = e.pos; - var expected2 = e.expected; - var variable2 = e.value; - return header + ("Enum argument '" + variable2 + "' should be of type '" + expected2 + "'"); + var _g = e.pos; + var variable = e.value; + var expected = e.expected; + return header + ("Enum argument '" + variable + "' should be of type '" + expected + "'"); case 3: - var _g16 = e.pos; - var variable3 = e.variable; - return header + ("Variable '" + variable3 + "' should be in the json"); + var _g = e.pos; + var variable = e.variable; + return header + ("Variable '" + variable + "' should be in the json"); case 4: - var _g24 = e.pos; - var variable4 = e.variable; - return header + ("Variable '" + variable4 + "' isn't part of the schema"); + var _g = e.pos; + var variable = e.variable; + return header + ("Variable '" + variable + "' isn't part of the schema"); case 5: - var _g29 = e.pos; + var _g = e.pos; var message = e.message; return header + ("Parser error: " + message); + case 6: + var _g = e.pos; + var e1 = e.e; + return header + ("Custom function exception: " + (e1 == null ? "null" : Std.string(e1))); } }; json2object_ErrorUtils.convertErrorArray = function(e) { @@ -1675,19 +1938,19 @@ json2object_PositionUtils.prototype = { var _g = bounds_min; var _g1 = this.linesInfo.length; while(_g < _g1) { - var i1 = _g++; - var line1 = this.linesInfo[i1]; - if(line1.start <= min && line1.end >= max) { - pos.lines.push({ number : line1.number + 1, start : min - line1.start + 1, end : max - line1.start + 1}); + var i = _g++; + var line = this.linesInfo[i]; + if(line.start <= min && line.end >= max) { + pos.lines.push({ number : line.number + 1, start : min - line.start + 1, end : max - line.start + 1}); break; } - if(line1.start <= min && min <= line1.end) { - pos.lines.push({ number : line1.number + 1, start : min - line1.start + 1, end : line1.end + 1}); + if(line.start <= min && min <= line.end) { + pos.lines.push({ number : line.number + 1, start : min - line.start + 1, end : line.end + 1}); } - if(line1.start <= max && max <= line1.end) { - pos.lines.push({ number : line1.number + 1, start : line1.start + 1, end : max - line1.start + 1}); + if(line.start <= max && max <= line.end) { + pos.lines.push({ number : line.number + 1, start : line.start + 1, end : max - line.start + 1}); } - if(line1.start >= max || line1.end >= max) { + if(line.start >= max || line.end >= max) { break; } } @@ -1696,14 +1959,14 @@ json2object_PositionUtils.prototype = { ,revert: function(position) { return new hxjsonast_Position(position.file,position.min - 1,position.max - 1); } + ,__class__: json2object_PositionUtils }; var sys_FileSystem = function() { }; sys_FileSystem.__name__ = true; sys_FileSystem.isDirectory = function(path) { try { return js_node_Fs.statSync(path).isDirectory(); - } catch( e ) { - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; + } catch( _g ) { return false; } }; @@ -1715,20 +1978,20 @@ sys_io_FileInput.__name__ = true; sys_io_FileInput.__super__ = haxe_io_Input; sys_io_FileInput.prototype = $extend(haxe_io_Input.prototype,{ readByte: function() { - var buf = new js_node_buffer_Buffer(1); + var buf = js_node_buffer_Buffer.alloc(1); var bytesRead; try { bytesRead = js_node_Fs.readSync(this.fd,buf,0,1,this.pos); - } catch( e ) { - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(e1.code == "EOF") { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); + } catch( _g ) { + var e = haxe_Exception.caught(_g).unwrap(); + if(e.code == "EOF") { + throw haxe_Exception.thrown(new haxe_io_Eof()); } else { - throw new js__$Boot_HaxeError(haxe_io_Error.Custom(e1)); + throw haxe_Exception.thrown(haxe_io_Error.Custom(e)); } } if(bytesRead == 0) { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); + throw haxe_Exception.thrown(new haxe_io_Eof()); } this.pos++; return buf[0]; @@ -1739,16 +2002,16 @@ sys_io_FileInput.prototype = $extend(haxe_io_Input.prototype,{ var bytesRead; try { bytesRead = js_node_Fs.readSync(this.fd,buf,pos,len,this.pos); - } catch( e ) { - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(e1.code == "EOF") { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); + } catch( _g ) { + var e = haxe_Exception.caught(_g).unwrap(); + if(e.code == "EOF") { + throw haxe_Exception.thrown(new haxe_io_Eof()); } else { - throw new js__$Boot_HaxeError(haxe_io_Error.Custom(e1)); + throw haxe_Exception.thrown(haxe_io_Error.Custom(e)); } } if(bytesRead == 0) { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); + throw haxe_Exception.thrown(new haxe_io_Eof()); } this.pos += bytesRead; return bytesRead; @@ -1775,6 +2038,7 @@ sys_io_FileInput.prototype = $extend(haxe_io_Input.prototype,{ ,eof: function() { return this.pos >= js_node_Fs.fstatSync(this.fd).size; } + ,__class__: sys_io_FileInput }); var sys_io_FileOutput = function(fd) { this.fd = fd; @@ -1784,7 +2048,7 @@ sys_io_FileOutput.__name__ = true; sys_io_FileOutput.__super__ = haxe_io_Output; sys_io_FileOutput.prototype = $extend(haxe_io_Output.prototype,{ writeByte: function(b) { - var buf = new js_node_buffer_Buffer(1); + var buf = js_node_buffer_Buffer.alloc(1); buf[0] = b; js_node_Fs.writeSync(this.fd,buf,0,1,this.pos); this.pos++; @@ -1815,25 +2079,27 @@ sys_io_FileOutput.prototype = $extend(haxe_io_Output.prototype,{ ,tell: function() { return this.pos; } + ,__class__: sys_io_FileOutput }); -var sys_io_FileSeek = $hxEnums["sys.io.FileSeek"] = { __ename__ : true, __constructs__ : ["SeekBegin","SeekCur","SeekEnd"] - ,SeekBegin: {_hx_index:0,__enum__:"sys.io.FileSeek",toString:$estr} - ,SeekCur: {_hx_index:1,__enum__:"sys.io.FileSeek",toString:$estr} - ,SeekEnd: {_hx_index:2,__enum__:"sys.io.FileSeek",toString:$estr} +var sys_io_FileSeek = $hxEnums["sys.io.FileSeek"] = { __ename__:true,__constructs__:null + ,SeekBegin: {_hx_name:"SeekBegin",_hx_index:0,__enum__:"sys.io.FileSeek",toString:$estr} + ,SeekCur: {_hx_name:"SeekCur",_hx_index:1,__enum__:"sys.io.FileSeek",toString:$estr} + ,SeekEnd: {_hx_name:"SeekEnd",_hx_index:2,__enum__:"sys.io.FileSeek",toString:$estr} }; +sys_io_FileSeek.__constructs__ = [sys_io_FileSeek.SeekBegin,sys_io_FileSeek.SeekCur,sys_io_FileSeek.SeekEnd]; var vscode_ShellExecution = require("vscode").ShellExecution; var vscode_Task = require("vscode").Task; -var vscode__$TaskScope_TaskScope_$Impl_$ = require("vscode").TaskScope; -var vshaxe_HaxeExecutableSource = $hxEnums["vshaxe.HaxeExecutableSource"] = { __ename__ : true, __constructs__ : ["Settings","Provider"] - ,Settings: {_hx_index:0,__enum__:"vshaxe.HaxeExecutableSource",toString:$estr} - ,Provider: ($_=function(name) { return {_hx_index:1,name:name,__enum__:"vshaxe.HaxeExecutableSource",toString:$estr}; },$_.__params__ = ["name"],$_) -}; -var vshaxe__$ReadOnlyArray_ReadOnlyArray_$Impl_$ = {}; -vshaxe__$ReadOnlyArray_ReadOnlyArray_$Impl_$.__name__ = true; -vshaxe__$ReadOnlyArray_ReadOnlyArray_$Impl_$.arrayAccess = function(this1,i) { +var vscode_TaskScope = require("vscode").TaskScope; +var vshaxe_HaxeExecutableSource = $hxEnums["vshaxe.HaxeExecutableSource"] = { __ename__:true,__constructs__:null + ,Settings: {_hx_name:"Settings",_hx_index:0,__enum__:"vshaxe.HaxeExecutableSource",toString:$estr} + ,Provider: ($_=function(name) { return {_hx_index:1,name:name,__enum__:"vshaxe.HaxeExecutableSource",toString:$estr}; },$_._hx_name="Provider",$_.__params__ = ["name"],$_) +}; +vshaxe_HaxeExecutableSource.__constructs__ = [vshaxe_HaxeExecutableSource.Settings,vshaxe_HaxeExecutableSource.Provider]; +var vshaxe_ReadOnlyArray = {}; +vshaxe_ReadOnlyArray.arrayAccess = function(this1,i) { return this1[i]; }; -vshaxe__$ReadOnlyArray_ReadOnlyArray_$Impl_$.get = function(this1) { +vshaxe_ReadOnlyArray.get = function(this1) { return this1.slice(); }; var vshaxeBuild_cli_CliTools = function() { @@ -1851,7 +2117,7 @@ vshaxeBuild_cli_CliTools.prototype = { } ,runCommands: function(commands) { var _g = 0; - var _g1 = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(commands); + var _g1 = vshaxeBuild_project_ArrayHandle.get(commands); while(_g < _g1.length) { var command = _g1[_g]; ++_g; @@ -1859,7 +2125,7 @@ vshaxeBuild_cli_CliTools.prototype = { } } ,runCommand: function(cmd) { - var command = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(cmd); + var command = vshaxeBuild_project_ArrayHandle.get(cmd); if(command.length == 0) { return; } @@ -1920,6 +2186,7 @@ vshaxeBuild_cli_CliTools.prototype = { js_node_Fs.writeFileSync(path,content); } } + ,__class__: vshaxeBuild_cli_CliTools }; var vshaxeBuild_extension_DisplayArgumentsProvider = function(projects,vshaxe) { this.description = "Project using VSHaxe-Build command line tools"; @@ -1930,20 +2197,23 @@ var vshaxeBuild_extension_DisplayArgumentsProvider = function(projects,vshaxe) { vshaxeBuild_extension_DisplayArgumentsProvider.__name__ = true; vshaxeBuild_extension_DisplayArgumentsProvider.prototype = { activate: function(provideArguments) { - var _this = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargets(this.projects); + var _this = vshaxeBuild_project_ProjectList.getTargets(this.projects); var _e = this.projects; - var f = function(target,debug,flatten,display,recurse) { - return vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargetHxml(_e,target,debug,flatten,display,recurse); + var _g = function(target,debug,flatten,display,recurse) { + return vshaxeBuild_project_ProjectList.resolveTargetHxml(_e,target,debug,flatten,display,recurse); }; - var f1 = function(target1) { - return f(target1,true,true,true); + var debug = true; + var flatten = true; + var display = true; + var f = function(target) { + return _g(target,debug,flatten,display); }; var result = new Array(_this.length); - var _g = 0; - var _g1 = _this.length; - while(_g < _g1) { - var i = _g++; - result[i] = f1(_this[i]); + var _g1 = 0; + var _g2 = _this.length; + while(_g1 < _g2) { + var i = _g1++; + result[i] = f(_this[i]); } var hxmls = result; var hxml = vshaxeBuild_tools_HxmlTools.mergeHxmls(hxmls,true,true); @@ -1958,7 +2228,7 @@ vshaxeBuild_extension_DisplayArgumentsProvider.prototype = { } var lines = []; var _g = 0; - var _g1 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.classPaths),function(e1,e2) { + var _g1 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project_ArrayHandle.get(hxml.classPaths),function(e1,e2) { return e1 == e2; }); while(_g < _g1.length) { @@ -1966,31 +2236,31 @@ vshaxeBuild_extension_DisplayArgumentsProvider.prototype = { ++_g; lines.push("-cp " + cp); } - var _g2 = 0; - var _g3 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.defines),function(e11,e21) { - return e11 == e21; + var _g = 0; + var _g1 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project_ArrayHandle.get(hxml.defines),function(e1,e2) { + return e1 == e2; }); - while(_g2 < _g3.length) { - var define = _g3[_g2]; - ++_g2; + while(_g < _g1.length) { + var define = _g1[_g]; + ++_g; lines.push("-D " + define); } - var _g4 = 0; - var _g5 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.haxelibs),function(e12,e22) { - return e12 == e22; + var _g = 0; + var _g1 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project_ArrayHandle.get(hxml.haxelibs),function(e1,e2) { + return e1 == e2; }); - while(_g4 < _g5.length) { - var lib = _g5[_g4]; - ++_g4; + while(_g < _g1.length) { + var lib = _g1[_g]; + ++_g; lines.push("-lib " + lib); } - var _g6 = 0; - var _g7 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.macros),function(e13,e23) { - return e13 == e23; + var _g = 0; + var _g1 = vshaxeBuild_tools_ArrayTools.filterDuplicates(vshaxeBuild_project_ArrayHandle.get(hxml.macros),function(e1,e2) { + return e1 == e2; }); - while(_g6 < _g7.length) { - var macroArg = _g7[_g6]; - ++_g6; + while(_g < _g1.length) { + var macroArg = _g1[_g]; + ++_g; lines.push("--macro " + macroArg); } if(hxml.debug) { @@ -2010,6 +2280,7 @@ vshaxeBuild_extension_DisplayArgumentsProvider.prototype = { } return lines; } + ,__class__: vshaxeBuild_extension_DisplayArgumentsProvider }; var vshaxeBuild_extension_Main = function(context) { var wsFolder = Vscode.workspace.workspaceFolders == null ? null : Vscode.workspace.workspaceFolders[0]; @@ -2027,6 +2298,9 @@ vshaxeBuild_extension_Main.__name__ = true; vshaxeBuild_extension_Main.main = $hx_exports["activate"] = function(context) { new vshaxeBuild_extension_Main(context); }; +vshaxeBuild_extension_Main.prototype = { + __class__: vshaxeBuild_extension_Main +}; var vshaxeBuild_extension_TaskProvider = function(projects,vshaxe) { this.projects = projects; this.vshaxe = vshaxe; @@ -2037,7 +2311,7 @@ vshaxeBuild_extension_TaskProvider.prototype = { provideTasks: function(token) { var tasks = []; var _g = 0; - var _g1 = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargets(this.projects); + var _g1 = vshaxeBuild_project_ProjectList.getTargets(this.projects); while(_g < _g1.length) { var target = _g1[_g]; ++_g; @@ -2070,29 +2344,28 @@ vshaxeBuild_extension_TaskProvider.prototype = { args = args.concat(["--connect",Std.string(this.vshaxe.displayPort)]); } var execution = new vscode_ShellExecution("npx",args,{ env : this.vshaxe.haxeExecutable.configuration.env}); - var task = new vscode_Task(definition,vscode__$TaskScope_TaskScope_$Impl_$.Workspace,name,"vshaxe-build",execution,vshaxe__$ReadOnlyArray_ReadOnlyArray_$Impl_$.get(this.vshaxe.problemMatchers)); + var task = new vscode_Task(definition,vscode_TaskScope.Workspace,name,"vshaxe-build",execution,vshaxe_ReadOnlyArray.get(this.vshaxe.problemMatchers)); task.presentationOptions = this.vshaxe.taskPresentation; return task; } ,resolveTask: function(task,token) { return task; } + ,__class__: vshaxeBuild_extension_TaskProvider }; -var vshaxeBuild_project__$Project_ArrayHandle_$Impl_$ = {}; -vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.__name__ = true; -vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get = function(this1) { +var vshaxeBuild_project_ArrayHandle = {}; +vshaxeBuild_project_ArrayHandle.get = function(this1) { if(this1 == null) { return []; } else { return this1.slice(); } }; -var vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$ = {}; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.__name__ = true; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.get = function(this1,i) { +var vshaxeBuild_project_ProjectList = {}; +vshaxeBuild_project_ProjectList.get = function(this1,i) { return this1[i]; }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTarget = function(this1,name) { +vshaxeBuild_project_ProjectList.resolveTarget = function(this1,name) { var loop = null; loop = function(projects) { var _g = 0; @@ -2113,10 +2386,10 @@ vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTarget = function(t }; return loop(this1); }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargets = function(this1,names) { +vshaxeBuild_project_ProjectList.resolveTargets = function(this1,names) { var _e = this1; var f = function(name) { - return vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTarget(_e,name); + return vshaxeBuild_project_ProjectList.resolveTarget(_e,name); }; var result = new Array(names.length); var _g = 0; @@ -2127,7 +2400,7 @@ vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargets = function( } return result; }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargetHxml = function(this1,target,debug,flatten,display,recurse) { +vshaxeBuild_project_ProjectList.resolveTargetHxml = function(this1,target,debug,flatten,display,recurse) { if(recurse == null) { recurse = true; } @@ -2139,12 +2412,12 @@ vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargetHxml = functi hxmls.push(target.display.args); } if(recurse) { - var _g = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveParent(this1,target); + var _g = vshaxeBuild_project_ProjectList.resolveParent(this1,target); switch(_g._hx_index) { case 0: var parent = _g.v; if(parent != null) { - var inheritedHxml = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargetHxml(this1,parent,debug,flatten,display,false); + var inheritedHxml = vshaxeBuild_project_ProjectList.resolveTargetHxml(this1,parent,debug,flatten,display,false); if(inheritedHxml != null) { hxmls.unshift(inheritedHxml); } @@ -2155,48 +2428,48 @@ vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargetHxml = functi } } if(flatten) { - var _this = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargets(this1,vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(target.targetDependencies)); + var _this = vshaxeBuild_project_ProjectList.resolveTargets(this1,vshaxeBuild_project_ArrayHandle.get(target.targetDependencies)); var _e = this1; - var f = function(target1,debug1,flatten1,display1,recurse1) { - return vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTargetHxml(_e,target1,debug1,flatten1,display1,recurse1); + var _g = function(target,debug,flatten,display,recurse) { + return vshaxeBuild_project_ProjectList.resolveTargetHxml(_e,target,debug,flatten,display,recurse); }; - var debug2 = debug; - var flatten2 = flatten; - var display2 = display; - var f1 = function(target2) { - return f(target2,debug2,flatten2,display2); + var debug1 = debug; + var flatten1 = flatten; + var display1 = display; + var f = function(target) { + return _g(target,debug1,flatten1,display1); }; var result = new Array(_this.length); var _g1 = 0; - var _g11 = _this.length; - while(_g1 < _g11) { + var _g2 = _this.length; + while(_g1 < _g2) { var i = _g1++; - result[i] = f1(_this[i]); + result[i] = f(_this[i]); } var dependencyHxmls = result; hxmls = hxmls.concat(dependencyHxmls); } return vshaxeBuild_tools_HxmlTools.mergeHxmls(hxmls,flatten,debug); }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveParent = function(this1,target) { +vshaxeBuild_project_ProjectList.resolveParent = function(this1,target) { if(target.inherit != null) { - return haxe_ds_Option.Some(vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTarget(this1,target.inherit)); + return haxe_ds_Option.Some(vshaxeBuild_project_ProjectList.resolveTarget(this1,target.inherit)); } - var _g = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargetOwner(this1,target); + var _g = vshaxeBuild_project_ProjectList.getTargetOwner(this1,target); switch(_g._hx_index) { case 0: var project = _g.v; - return haxe_ds_Option.Some(vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.resolveTarget(this1,project.inherit)); + return haxe_ds_Option.Some(vshaxeBuild_project_ProjectList.resolveTarget(this1,project.inherit)); case 1: - throw new js__$Boot_HaxeError("unable to find owner of target " + target.name); + throw haxe_Exception.thrown("unable to find owner of target " + target.name); } }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.flattenProjects = function(this1,project) { +vshaxeBuild_project_ProjectList.flattenProjects = function(this1,project) { var projects = [project]; - var array = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(project.subProjects); + var array = vshaxeBuild_project_ArrayHandle.get(project.subProjects); var _e = this1; - var callback = function(project1) { - return vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.flattenProjects(_e,project1); + var callback = function(project) { + return vshaxeBuild_project_ProjectList.flattenProjects(_e,project); }; var result = new Array(array.length); var _g = 0; @@ -2208,12 +2481,12 @@ vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.flattenProjects = function projects = projects.concat(vshaxeBuild_tools_ArrayTools.flatten(result)); return projects; }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargetOwner = function(this1,target) { +vshaxeBuild_project_ProjectList.getTargetOwner = function(this1,target) { var _g = 0; while(_g < this1.length) { var project = this1[_g]; ++_g; - var flattened = vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.flattenProjects(this1,project); + var flattened = vshaxeBuild_project_ProjectList.flattenProjects(this1,project); var _g1 = 0; while(_g1 < flattened.length) { var flattenedProject = flattened[_g1]; @@ -2225,20 +2498,20 @@ vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargetOwner = function( } return haxe_ds_Option.None; }; -vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargets = function(this1) { +vshaxeBuild_project_ProjectList.getTargets = function(this1) { var targets = []; var _g = 0; while(_g < this1.length) { var project = this1[_g]; ++_g; var _g1 = 0; - var _g11 = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(project.targets); - while(_g1 < _g11.length) { - var target = _g11[_g1]; + var _g2 = vshaxeBuild_project_ArrayHandle.get(project.targets); + while(_g1 < _g2.length) { + var target = _g2[_g1]; ++_g1; targets.push(target); } - targets = targets.concat(vshaxeBuild_project__$ProjectList_ProjectList_$Impl_$.getTargets(vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(project.subProjects))); + targets = targets.concat(vshaxeBuild_project_ProjectList.getTargets(vshaxeBuild_project_ArrayHandle.get(project.subProjects))); } return targets; }; @@ -2325,6 +2598,7 @@ vshaxeBuild_project_ProjectLoader.prototype = { } } } + ,__class__: vshaxeBuild_project_ProjectLoader }; var vshaxeBuild_tools_ArrayTools = function() { }; vshaxeBuild_tools_ArrayTools.__name__ = true; @@ -2356,7 +2630,7 @@ vshaxeBuild_tools_ArrayTools.unique = function(array) { }; vshaxeBuild_tools_ArrayTools.findNamed = function(a,name) { var _g = 0; - var _g1 = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(a); + var _g1 = vshaxeBuild_project_ArrayHandle.get(a); while(_g < _g1.length) { var e = _g1[_g]; ++_g; @@ -2415,7 +2689,7 @@ vshaxeBuild_tools_HxmlTools.mergeHxmls = function(hxmls,flatten,debug) { if(hxml == null) { return; } - var rawClassPaths = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.classPaths); + var rawClassPaths = vshaxeBuild_project_ArrayHandle.get(hxml.classPaths); if(flatten) { var result = new Array(rawClassPaths.length); var _g = 0; @@ -2427,12 +2701,9 @@ vshaxeBuild_tools_HxmlTools.mergeHxmls = function(hxmls,flatten,debug) { rawClassPaths = result; } classPaths = classPaths.concat(rawClassPaths); - var defines1 = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.defines); - defines = defines.concat(defines1); - var haxelibs1 = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.haxelibs); - haxelibs = haxelibs.concat(haxelibs1); - var macros1 = vshaxeBuild_project__$Project_ArrayHandle_$Impl_$.get(hxml.macros); - macros = macros.concat(macros1); + defines = defines.concat(vshaxeBuild_project_ArrayHandle.get(hxml.defines)); + haxelibs = haxelibs.concat(vshaxeBuild_project_ArrayHandle.get(hxml.haxelibs)); + macros = macros.concat(vshaxeBuild_project_ArrayHandle.get(hxml.macros)); debug1 = debug1 || hxml.debug; if(hxml.output != null) { if(hxml.output.target != "interp" || output == null) { @@ -2455,23 +2726,29 @@ vshaxeBuild_tools_HxmlTools.mergeHxmls = function(hxmls,flatten,debug) { packageName = hxml.packageName; } }; - var _g2 = 0; - while(_g2 < hxmls.length) { - var hxml1 = hxmls[_g2]; - ++_g2; - merge(hxml1); + var _g = 0; + while(_g < hxmls.length) { + var hxml = hxmls[_g]; + ++_g; + merge(hxml); } return { workingDirectory : "", classPaths : classPaths, defines : defines, haxelibs : haxelibs, macros : macros, debug : debug1, output : output, deadCodeElimination : deadCodeElimination, noInline : noInline, times : times, main : main, packageName : packageName}; }; function $bind(o,m) { if( m == null ) return null; if( m.__id__ == null ) m.__id__ = $global.$haxeUID++; var f; if( o.hx__closures__ == null ) o.hx__closures__ = {}; else f = o.hx__closures__[m.__id__]; if( f == null ) { f = m.bind(o); o.hx__closures__[m.__id__] = f; } return f; } -if(typeof $global.$haxeUID == "undefined") $global.$haxeUID = 0; +$global.$haxeUID |= 0; +if(typeof(performance) != "undefined" ? typeof(performance.now) == "function" : false) { + HxOverrides.now = performance.now.bind(performance); +} if( String.fromCodePoint == null ) String.fromCodePoint = function(c) { return c < 0x10000 ? String.fromCharCode(c) : String.fromCharCode((c>>10)+0xD7C0)+String.fromCharCode((c&0x3FF)+0xDC00); } +String.prototype.__class__ = String; String.__name__ = true; Array.__name__ = true; -var __map_reserved = {}; -Object.defineProperty(js__$Boot_HaxeError.prototype,"message",{ get : function() { - return String(this.val); -}}); +var Int = { }; +var Dynamic = { }; +var Float = Number; +var Bool = Boolean; +var Class = { }; +var Enum = { }; js_Boot.__toStr = ({ }).toString; vshaxeBuild_project_ProjectLoader.PROJECT_FILE = "vshaxe-build.json"; vshaxeBuild_project_ProjectLoader.DEFAULTS_FILE = "vshaxe-build-defaults.json"; diff --git a/haxe_libraries/hxjsonast.hxml b/haxe_libraries/hxjsonast.hxml index b748086..f107bf4 100644 --- a/haxe_libraries/hxjsonast.hxml +++ b/haxe_libraries/hxjsonast.hxml @@ -1,3 +1,3 @@ --D hxjsonast=1.0.1 -# @install: lix --silent download "haxelib:/hxjsonast#1.0.1" into hxjsonast/1.0.1/haxelib --cp ${HAXE_LIBCACHE}/hxjsonast/1.0.1/haxelib/src +# @install: lix --silent download "haxelib:/hxjsonast#1.1.0" into hxjsonast/1.1.0/haxelib +-cp ${HAXE_LIBCACHE}/hxjsonast/1.1.0/haxelib/src +-D hxjsonast=1.1.0 diff --git a/haxe_libraries/hxnodejs.hxml b/haxe_libraries/hxnodejs.hxml index 483b01c..577e96a 100644 --- a/haxe_libraries/hxnodejs.hxml +++ b/haxe_libraries/hxnodejs.hxml @@ -1,6 +1,7 @@ --D hxnodejs=10.0.0 -# @install: lix --silent download "haxelib:/hxnodejs#10.0.0" into hxnodejs/10.0.0/haxelib --cp ${HAXE_LIBCACHE}/hxnodejs/10.0.0/haxelib/src ---macro allowPackage('sys') -# should behave like other target defines and not be defined in macro context ---macro define('nodejs') +# @install: lix --silent download "haxelib:/hxnodejs#12.1.0" into hxnodejs/12.1.0/haxelib +-cp ${HAXE_LIBCACHE}/hxnodejs/12.1.0/haxelib/src +-D hxnodejs=12.1.0 +--macro allowPackage('sys') +# should behave like other target defines and not be defined in macro context +--macro define('nodejs') +--macro _internal.SuppressDeprecated.run() diff --git a/haxe_libraries/json2object.hxml b/haxe_libraries/json2object.hxml index 0ef933d..4bf7e54 100644 --- a/haxe_libraries/json2object.hxml +++ b/haxe_libraries/json2object.hxml @@ -1,4 +1,4 @@ --D json2object=3.6.3 -# @install: lix --silent download "haxelib:/json2object#3.6.3" into json2object/3.6.3/haxelib +# @install: lix --silent download "haxelib:/json2object#3.10.0" into json2object/3.10.0/haxelib -lib hxjsonast --cp ${HAXE_LIBCACHE}/json2object/3.6.3/haxelib/src +-cp ${HAXE_LIBCACHE}/json2object/3.10.0/haxelib/src +-D json2object=3.10.0 diff --git a/run.n b/run.n index d163cc0909dac93c534155cee2bad1f7cc4a7e9d..104b1ee13880f71e0fc033d1c73f13058fe036ea 100644 GIT binary patch literal 114642 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 VGZVaJCZKK^5(v!^;qYMT{{hi$DB1u3 delta 35146 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�t^0?Z6xcs7n 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 From 524fc60faccd95c69fbbea8a9dece81b672973ee Mon Sep 17 00:00:00 2001 From: tobil4sk <tobil4sk@outlook.com> Date: Wed, 17 Aug 2022 17:08:16 +0100 Subject: [PATCH 3/4] Add build and install instructions to README --- README.md | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index bddbf06..6d299e1 100644 --- a/README.md +++ b/README.md @@ -1 +1,57 @@ -[](https://github.com/vshaxe/vshaxe-build/actions?query=workflow%3ACI) \ No newline at end of file +# Build Tool for vshaxe + +[](https://github.com/vshaxe/vshaxe-build/actions?query=workflow%3ACI) + +This is a CLI and VSCode extension build tool for Haxe projects. + +## Installing + +The VSCode extension cannot currently be installed via the VSCode extension marketplace, so it must be [built from source](#building). + +You can install the CLI tool using your preferred Haxe package manager: + +Via [haxelib](https://github.com/HaxeFoundation/haxelib/): + +```sh +haxelib git vshaxe-build https://github.com/vshaxe/vshaxe-build +# You can now run +haxelib run vshaxe-build +``` + +Via [lix](https://github.com/lix-pm/lix.client): + +```sh +lix install github:vshaxe/vshaxe-build +# You can now run +lix run vshaxe-build +``` + +## Building + +Dependencies can be installed by running: + +```sh +npm install +``` + +To package and install the VSCode extension, you must have [VSCode](https://code.visualstudio.com) and [vsce](https://github.com/microsoft/vscode-vsce#usage) installed and available in PATH. + +It is then possible to package and install the extension using: + +```sh +vsce package +code --install-extension vshaxe-build-*.vsix +``` + +If you want to work on `vshaxe-build`, you can build the various components via: + +```sh +# build all components +npx lix run vshaxe-build -t all +# build the cli script +npx lix run vshaxe-build -t run-script +# build the vscode extension +npx lix run vshaxe-build -t extension +# build the json schema +npx lix run vshaxe-build -t schema +``` From 52594a163c4a10f899ea4f312d0b45a79ad9f949 Mon Sep 17 00:00:00 2001 From: tobil4sk <tobil4sk@outlook.com> Date: Wed, 17 Aug 2022 20:36:34 +0100 Subject: [PATCH 4/4] Update to haxe nightly instead Avoids a error while loading the extension: `Cannot assign to read only property '__class__' of object '[object String]'.` --- .haxerc | 2 +- extension.js | 15 ++++++++------- run.n | Bin 114642 -> 114014 bytes 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.haxerc b/.haxerc index 7140546..64dc84b 100644 --- a/.haxerc +++ b/.haxerc @@ -1,4 +1,4 @@ { - "version": "4.2.5", + "version": "a8f2911", "resolveLibs": "scoped" } \ No newline at end of file diff --git a/extension.js b/extension.js index 204ba83..2612a78 100644 --- a/extension.js +++ b/extension.js @@ -1,3 +1,4 @@ +// Generated by Haxe 4.3.0-rc.1+ (function ($hx_exports, $global) { "use strict"; var $estr = function() { return js_Boot.__string_rec(this,''); },$hxEnums = $hxEnums || {},$_; function $extend(from, fields) { @@ -1054,18 +1055,18 @@ haxe_io_Path.normalize = function(path) { var acc_b = ""; var colon = false; var slashes = false; - var _g2_offset = 0; - var _g2_s = tmp; - while(_g2_offset < _g2_s.length) { - var s = _g2_s; - var index = _g2_offset++; + var _g_offset = 0; + var _g_s = tmp; + while(_g_offset < _g_s.length) { + var s = _g_s; + var index = _g_offset++; var c = s.charCodeAt(index); if(c >= 55296 && c <= 56319) { c = c - 55232 << 10 | s.charCodeAt(index + 1) & 1023; } var c1 = c; if(c1 >= 65536) { - ++_g2_offset; + ++_g_offset; } var c2 = c1; switch(c2) { @@ -2740,7 +2741,7 @@ if(typeof(performance) != "undefined" ? typeof(performance.now) == "function" : HxOverrides.now = performance.now.bind(performance); } if( String.fromCodePoint == null ) String.fromCodePoint = function(c) { return c < 0x10000 ? String.fromCharCode(c) : String.fromCharCode((c>>10)+0xD7C0)+String.fromCharCode((c&0x3FF)+0xDC00); } -String.prototype.__class__ = String; +Object.defineProperty(String.prototype,"__class__",{ value : String, enumerable : false}); String.__name__ = true; Array.__name__ = true; var Int = { }; diff --git a/run.n b/run.n index 104b1ee13880f71e0fc033d1c73f13058fe036ea..83340b9ff39493b3c7985917adf8874d9ee966b9 100644 GIT binary patch delta 17780 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 delta 18302 zcmcJ130zgx_WxOD!)3n06)tcOAaD@{^@@mss0W-CkEo=ms2~U^hJZ}Y;vCMyQFjhm znsaI@DwbAiTH2^(+F)sxM(Hb?%+ja-wa&T7(0lLq{{R2yhq2Cgt-bczYp*@6vk&im z^_StJ#|C3^ul@rkF+pf63c|$82aPkK;vG>C#WhR-F~R}SRtG^4ZxN9lQKk~PPb9#A zGR1&sqXG5q6YJuH?0hFgYn@Q`2a*2HC|m1{vg3q)B+|nL3r@M9?4Ap<!(5SMx}t1` zs~Lr>T?GLWduEpA2%u5%uo^7Nf$yVS{L)o0h(2zD0TO$q<ct$QqhfD$x)>K%=7vVz zB68aeb&c+b{E3Wm7nrz(ki`R0w1?mbPnBj1;s``yxO!W(bpOgIIEe2y!Q#(}d{5+l z6RhIoi3R<Llz5_SE|DZJBqO}Ypb5zzCS*O-K5PwiQm?XZ6_cByAjC%yp)fv55L@|R zmy${f3kGEtm*f;@v=hW$X4J?>0*Untq6B6To+>TQD;OuPF{9~^NbgHT4eF!K?<iK? ze6e&ql7?2)O%81$SNdZ04~Tq93iVrw7Q`lgSUt}VtFQE{`qjZ*6p#6-;B+G59?7l; zYObT7KLj>%y@MdehN4P()h(x!ATA75ce#{Co*_|abFCIyZ{566tvEs46OJku!`0rd zUBmwj7ewYD<d)^<Gf^lg6ysW8;i4Aktl9z{`v<Y!>TcKJ&_xy9tbM1oM8P`|n*H{I zcqsyv)JT-Qiljm3vGhhH+6iujrL9^a>d*?6R}g!&l{(QaUi_++y4!7lPhe{lU2KgS zU$jPz4sDPfrMkI?Mb2-7!qY_FLt*{Uwa1V!8)}cXq4s>6I>LQW#9kX}{(z*uCdTPE z(rMKewHLHSw6|^5NA7u|c&V-0wMnpK!m$>kW3(<I?Gl4}S308XQAc%3lhKy&ShSi= zq#zch+hei(F`;nvrzVze$rw^`DUo$?DBKc<#SaLDcA|(3$SfT%fJVinPFR-K300>N z+0Y3W+_p|?l4rDMHDa7`85w!m85!cKPU=$6K2ZbXQRpaivDs|0IIA;OUfvlcO@tnq z1uaU0aR%pQ=I2ez5pSVb+}uTFUacy;x}xb*T?K4hXo<hA@i#)e+EoBZ)YjTw8I@lr z@(U4j0_wL&(2Hrl3u5mCY-$&geMFihqDB#s$Zl9+UN=O6-I09Q9oa95^zMOVG?8|B zMCT)6?m~&SfHF#o^7Bf?omB8H67qu@>Ry(MGpvXDmDiv|OHXVl5(zHU4gzx(#^sb| z<mVKOD;>|=g!GZ=!7iglg^q3&hP?^KUl;rh#VI=~6u~G_Q74;h(VhC#86Q$um|r4@ zub@c$pbt9x8=?MvabU*uMYNBQr+UR?ZPBG4ItxNu#)Ry=Vp<M)`8i@4O3~A)B?1r; zTd9FfW7^9}ny#yuOu$KVbL`}7F*^zUpRCJ<<rQQXPA(A_Bw@2x`>XStrZ?%Qpt?aA z(jz~!q(m%Le{Sk8KCh_m-kmCf2B14<iF`Kzjr>UDK9R>n49Vm+5)2GZn#sxN_9Z09 zw!?|52dW^mG_O1d14U7rm{U@cIW9+hL^at!v>_1*9f&mt5Scs>3wD$2FcNjM_aQ^q zp(yfHQ+-0i=B6V2c^JCBYy_gcBe2Gu5y&=8L(+waqHgl(C6%RV5$K*@IQHqBZ1Dvu zc`psMAEc=dePRa3jKu2mM`AOJ5aC$aY~p2-y*C=kqI4vI8CV)iq*n&ALy1f$vVh1- z8EEl1ksCyQQRkSOD*j`%R+9#1O~@HrD)zLq$z>C>a*D-5VjYE~WZKa1*&SzrxPgQQ zA*ow&apqL<EOO%AG3cj3y>5=~AC-wq#VqtJ!$~?854+&pyqx^(;DXGFIl-Y~ryO*y z(?qQDV*w)XLUg1R66PuND=5d+hniZ`@xfwOb+oUgVsRnr-6k@k2$c(oEFiMC2-`f3 z1QPqi2)K%e7Cc>0IJqD-6PIxo&bT|M#e7hlSCCh#uk7q6g_cQJ=qBg~SFhsY!eX&6 ziOjWr^g=&+6c(sI^>!A;^3{Ic(#}Z&V<s#gTUcC-!6J>+%>1$(@l&;}Uy$fhtPb=G zhFG=8FEl8t7=uKOmy{J16&9D~WDm$J>Yp=p$kd`7ahZC+&uTbEDw6usrT|g=M*YJt zRy3BVQU0Nxop6na*+dG6tX8x9@3j3>6HeA9Zo6n&*X{5~Scn2#YaU|BRMcEL4atFN z7_0N@Ov_;Fm&E@#4TB|4M-+qvgN1vsL3p~bbUY4lclBpWh}*>JsPZzAD{7z=?Dora z3~j*-ta455D@C<*nu*YhNbF1;T^Av{Y+{jZ0v`Ohx`XjY?1gf1x%z@M5)P>krDzf6 zs8InOy?&j8`Ndarv1ZgfG@m%HYI49B5%SbegSNqBb!M}czH2J6wAW%J1CijSF*Z9` zEL*IeXy)gBWHDB{Ph}mJsMni$XXY<KLCq2rJRsC`DUyy$v6`2V`c&V{DLKL2%kpr# z(RL;Frqanv(X)j__M)D6fyj4M&|?|qNRyT!yLcHUUydsf4PT)S4Q}3i#tJNNwh{%$ zS0d`Z3Q5u`WHS*_<na*vLw!CtOpIQwo(&ET*tHs`j)N8!+@=c(vvV>g7G{^_=ah)Q zsSx7VH&eyh`D@V5J8KYKBJvlp;#x%JwHWU{YmpsKq>N<i3H?qab{&#^>rfW^Y*l8+ zGzW3y`l>IR%K)EO1+<vp<6c%Uxj3^(7?0hzsXxm8KE0-l%_%C)D=dhQryWe+&eY{y z+E`1+7vmDqRqJVu%`6)?zSM4EQi8X7rppS0Znmmx*A*7miI;KQKXW$#sFOx}t3M3u z402WT;kUpfTc$V(CTKU@Nr;5#AzAY0s+86v@`fy@708#9WZ6(;5TYS&kfYFhmYf`o zPdPM9mQxF4^NHSAtZq-s^x3MZzZH7HL9m^45agg;4uVAu9U14Y>B@5aIS_1Bg(Ei^ z0^|v@oLnr+z0+kmMNUeU<)c}}sdDe-vK*v_Wko?`)sU=}0Gq468|w?AT&%L3<rOg& zcn}s24-Z@5pMIiXfkzhvVb&hGx13}~WP-;lkzXep@nK@ZctJ3qNKH#A-z?{%Mlfmo zDa+BA+?p8cDTgx0Q5I%6DG2C@<rvj*s3gY5oLh=QZfaVp>>7;iFqiQlM6wDe0kAZP zxjVZEDOo|xqsCbXV#agMLO65V<&0(FxCx?8N7m%NAY?I5Gi$m@4ypv9{1KLU*PwM~ zI!A2;F|(}yn3*qnDyOF)`?`4yx#1H<D&@>yPLgeyJ(-vvN*rZ0EU9_9Bit<qL_v<O z6tN^g{V-R7Ks8`o3IwTz<Dx5?-Noq3EEt`hC8uG3Lx!ZLrdhf~o&?mlI8!I~Fl(CG zllV|_N{(ca`Dncbx*f_QN10fglh_|~n0&w)`)@nPgmfG%dYV|<yC9?_ZIul}()Wb2 zs3~L*e@v|1b#e&Wt0CikAx7;qexP56yEs?qCpGs_GKLxdEl16c>I>t2E8=!x)kxL} z9qq{C@8WQEF<qzL#>zN2UBbdy=L>qQ5->ukdTiuG5{0sEqf*T)NjVV%M1me?umjyc zr4IB6GqIjCp0GVPnOLtlZCv#7UfCwrXKDK<3VrUFSl?&sDfB&KVoAqDAvMj6kv6e@ zQ5bKW7m7MQuekZE;bCbwGAY`>A94Ot2R}-Y_v52Lw$Qw11F9b74F%Y*4td%J$?CkP z7q=dWOD2d7>WO6V1&ppMOUb92vVlG2=^|ig=m+PPi49TX@&hY|R$|XAEVXB9ss(4M ziD9m$b#?d}bPPjdV#5ZJ#KzJz2Mufl#xGRkOl%~M6B*ZK#F^Nr`E`;}Mbx#?2T03g z*BX7v#L|OxNrhf9y{Cy~D0M0sOHFJHMy1XWaVD0v2IHA|U&Qva6cZa8$7mtwg0W~L zJF1=_yNikCw5%t{i7~O<;Ch1G)}2i(&-saDE6X#p3BnUTi%l@I{H5XS>ES4o&8#4f ze4?LdR;VtY_>@cWN-8n367`3P9idbWDTuC^Bx6J;55d(q#S^<}VzXYrY6e!3hz}E+ zeHY^y&B`&jvb>JXmE+l*bAoV#%{8-U&ZMF7cvjgG7gm7<qhw)=YEaR}mW|RHMq*^k zae?)ggOJKwWt{USMA2-;44f@fzz+kZVx4fd6wT6nSUX-2?y+_1t%4AjHN#0}X3wgg zg)*#H2NuRwY?zI*X=oXr7Pb*JQq4H%CdQ*kIg&kB<RIKjj!dL2cRV&V8@DdGocwu< zga+&p$;xHiZ*k0!b<MYgh3*oCa4N<HQ?ClK=Gr21+^x=>L3J<k50nkKlAfr{ZqT4X zO)T;k@jOT?3Zci0qUPSR0R#0!zmk0Js2(ng1X=y6$WpO6j)JktkK{q@g+z>6L9(10 zj*XbumO-L`+hSUp+?Qt9)@MnpAQ~SQ_G0T<xyi|CwqwL>JA>y*R%-IJbXiUhFQSpz zo}Uu_DH+)@97DD)Sr6LI6Y06hp#mxFioy|(W4rGI?rq7r;rKMMJs4C|OZ*L{5I;}* z%HESSugq*eE-i{6{)Dra)t4tlR~#rpQL&twk~|@02W?L&vT;;2JBaP#k+xjUO%Fw@ zGDY5ef!aLu?JQ!Z%|auKgILvYG+lrbqd?A*??to2eFZ#Fj*w$PEk%JwUHeH7W!1>1 zWMyTgVdKZHlhNd9!SaLxxj2ZuvP-}rFP?yN^VM&$LUOV^D;f2Us};q;6(^oWbF*-F zNtS~UTG(qi2;uDLAU))7^u+mo@-VuPWM-#oNa)H=_e3*B_9iV6?Z?2*9H64&+*~s| z+Y*mixj0EKF33%JJ&3&>gDoawkLjm;7H;<Xe>fTixoS{JN4Il#-S9MFpE={p)uhn@ zU{hz51cFkvq2zPdirF9-;ZF>>0Uo?ihackL*UJCtS&OlSNO-ijw%~ET9Wmjdj_8mC zT#n0`h-c9hw91%b)X*X3fGgc`jZr`6!<iulVFiYR){)Z;?6`9<HiR#+)bCK{l5NL9 z%=H{;#cSt$JaZpq)R2XFbkUJ4zr&0sJq@sF$3G4;^E7F2G4sM8Q%<mzd6~5gAeuEj zVboBCEPuefP4>LNRXhBnnHjy*(|~a1i*D)|-S?B_3Cv&52rw9CX1N;8q)Kv|j&=(R z2zIt(0}Bi`*fG`&YU%i-pjnMWZ9xSNbTIaZY8zMxdZncZLH5i5H$`h}qs|1eFl`Y` zW6iNYgtJ(4vj$vQcnofYBnw4o(ozWuSj*NZ*7J&%t#z?0i|F}87*T;|1C_gC-eJ_x zV%7@HlWZ$%WoE4rM6))Si5N9(V78O&32u9-RvI;<7EvOiW6GkUX>{8UcR>-pbYUN3 zR#H@S+@Yp|qM|b$r%)S&F<i0Om1q`s#;73!>oi|SG%@14*m00OMTuu!Fi2Xu62!Xp z)#r+ys&r%tVMeB5qdi&ah}nxB8(Bs7ZFFSyKqbmfTv^XewWwEiE$Ur^KH2Q)4KXIW za-Tc3Dt*rwS-(v<C5$X-K0?|>jC#soW(p=HI%8l1#^55;3Jfe+aH@F148$C^wqOwE zwzYULX1KLDC5qxmi3nybn5*d6!iMbC5pFv}F*v$H>I}OunGHk7Ol&whrll-KHewC+ z8uJ!vpE3<sEn%s}l$_M!(Ky7qMtaX$l(DoHQTAbEnV6wOW8#76zKFKQqNa|r(H$M- z;5yP#ZtGe!F02CMO43j^F3hB%ci4EeMY0=gyjcT_S)N{q>7)40EcvV1h6B_BpM z5&fsY7huqJt~V<*Y2s*Bq-`C4u}L;oTuBpm5^7smi8JX=x?X`*!&zyVE=MC}n*KCa zZex>28MR!*z@}g?^sL0prc!DZWG|TJSC5%a`BH7k4D7%YW+r7$wI#EjrKZUoCO#E$ zwai;=wn=ZqsAWB}{1=;R(%@n?4?{w!&{j6jtbrsp-!95x^UZ95=JkHIkXG9>?-|)b zoXiGRi6cU&H(O+~ix!X3{L;&p46k^?;i99gD4H!RHEPJfmSeX`W?(B0>xja<lIC`h zy<iodj87PRiLYheVya0~(RN8awOY>BnixR?TZaMHgcU|Tm2zdz&ZdPyd6k8&M;8bg z*aqx@mTPrn8?lZCgS3n#nmvc^>AA}XY_my+>6kVc*$Z)G>-k`^u%$0WSjSt@u8v;Z zq@xN0+lCoSt#~^o3blAgOfA~^Z7te`-L1uxyXcsrvIo5*(-@4Ga81baEVkFALo?eK zM>AAr`?nc2Y+x^+(Gj+P0B15O7}!CrbsZntMJ?&LYEUg+$PSzA!Xw&Ysad|vj&@|# z8c&IZfgQsf$fzY52KLI3TJ-9(b<*QYb!ml#ohTyfdPWk;Uc+8%IEcOOM_z}sH!y01 z4eX>AR~?^vuU2}xCE3-bZ$7L=XV&PbH#=+6O)X?^(ee4ViM`blEgL`(gsOcDSAqH5 zbvMk~<#gGEK)zu{8pO`4Ln;TQy%R>46tzhWf|T?$`Uz$4eu~*Ldk<gUZ0!B(lv{mJ zgUbx_e!Ou&w?7<jKrV~mg&OLK1}`4Ngp_0-sgEjsM}ORx@<z<M@M&Y04v>K#=$-Bp zyh+ijpe_BsaCVv2G~J#Q$n?5tL)RkNmEk1Bys{(vl;*!2-P+E6rWP;S>-*%ENU&cL z*{_8H7aPH#Uni-NOSV?kEIG{F@q0@_Noi)m*qp-Ls*NkY0<R4F?b8!8>XcQ%{&lxf zf_8&iSISonRPV2fsA{!(tGigVzUsrxc_IwwU+)LsfKD}vP@`BvtZnb+-&U+MCSU1t zM6te@c<IhTMGe~GS5>fOm1}^nCD_{PZQ;80o*eXjopxo|DdQ2<eQ)T0RH*8__cXvW zT6=-x|3iB<YSDi07;BA!4%KV#Sgxs_hgzFT+wjpVo9x@39!Sb&roOR1Sp8~$-~atq zs+<nEiLgy=dME_S^)3zjpSsk!#ed(W6hnIR?di^UYI~^ubjSj!RjySf02Nw$wlV*y zJ;f4c-PL)RL9yg1)(5}5-CEsqxTkBKy{hsf*P=T~QVgy%#nMu-j=AuZaHP?Y+8Ym1 z(2cD(+lB8_#Kb$woin+e)ruPbi2ttk_Kef&p_(ultX@IdLVZ{h<o9HrH5kQ=y{h&5 z(Z+^_RTbZ-gGU2d)fYclU7)l2_}5%Vr6$+!4!>@Kz^YxpB?EVG1%I{4Jr{n{4J>N( zy&V3n2_*;aecZIPL050qC{mev;ny}Ta~*4LO63g-vBQle(q#4a9}<*TIo*#Jo6c{b zemK`C&955r*Ie*wSfEJ7Ro^}MnN?Vyz0<+t>#yAv>sM>tf)669l~{-SDM4R<T{p99 z2P{p@b+5s3>9oys@Md~T9BllDad_RBnV=6>8dK0wYeZoCw{n!`l?eoVA3c8jczaE; zxLvr3U9`t7^2sznt4=jH)4j=DL}PO|v5xxvV;PRFZ3#2Oj$$XTDoRK~g?Z?EHA>rK z7gAg9PUt(%&7o#H^<YxPv35sJ!C(;21D|1rAUMa{i_j0=<1<Cr1Q)o4K_Fb@arkKV zQG<|GD(+UVxwg-(-=+1qQK?8D^HK&qT|Uv9lrHmARP{2y#=r+3zcUyIpYhQSaMb4w z{L>R5<1$irYx_5ogwQNSy2>v)gI_?#iTYCPpG~pCQ{lg)i5YwNC`Sl^t9+ItG?&W% ztzI^N-4TKu2BHG*;|5kSqeHc$0hWkOI@ef7FDpHHSBbEiHhRnau>pM9_VfUr?*?J~ z2WNNy*ZD0M2-2n;4|Ih#IvVQ==ivr<=<mL{&gXA534huR+~8XsuOxg^*Bn%*d5fQ- zCX#S&^G9yr4&RZAR2}XP^BLUZFExQ+_?5rc1kOH*;6sX_H{b6GuJBJijF0$-p0Kph z+{JxUD&_@Vkc}Tq_$4ohpyy*RNOib~gTb#g1q&}R!6cYZjr#F_njoqkHaiEI9cc(Y z){3iVGzHJb%iyLopFigf5)|`SyrCUFZhJ#Zm|yMf1GxZR{AU|915fVN7Mk+AZNLQ| z$IRHL`XV2G&)i7MkC)pTX<7Ir-&&Cm-{}jZ#TASvwtx<%(8IZg6qYfT33$?(Mjalv zi4X7tOvtdieh>gPJis64+yx#_k7Il|KAOFNF+lCo!?{h(4%khTi#Dmex5YieNmW_B z#vclS^_POUL4u*74fd%cwVSuQb<OCZLbM@8On;phNKoncRL$(%f&6*|_(3!79RS_^ z|7A^dcM=~H087O`ov0HrJTwrO*+Jed5VGLu>TQ8ANOT+TsQEbZaPH4)$ot;aO@qN7 zpt!nC2;>3eR`XDd8>rRQR<MHGalJ>=50Bf=Z-zk!9Lt0j(2)-d28(-!te0Y}*73>B zVYF|&6oN~k-VtFo;BqbEx0^#~qpg~|hr=&EGjIpO)5{t6x{3Qfh&Z?%JK<E_v<2jg z(1Op7fMJcRU5<cIh~R%lz^Fz=)k7j71$bU-aOa0wfiJY<W7^>0#Ly@=<qujxlUh+n z9?=@j*cIaVgw{C2+VN(j9?uW9h8DG47yd^*PUc<P)Ya?8XSKoUlUQ#m_TVQPi+b_D z8jJeyIGT#}D)PHFaO1OWV6HEP0s1tqrw9Y}`JY&g^ZyNiA^c(#G>4D*A5kE~P~Nc} z#6v2d)D9A17(dhwl92mnI~d#&)64oJ(*_4-L<3Q!5`nUEULFlGEz=qlDWpBJfv8sd zBhnt#ph(mH*S2l#p`~{tPpH+=e8RseN#{GT1Ty%C?IF@<Ov8pEX5(Rcl^bJV0*tMm z8iV5o*?da}WVJ^m@7NLIbZq7eI>JuK<!xed{buu|SeU3kV);+8V1n#wF%ClsW%_nf zst@a^PT*yl)}YyRcWFAW=mc+Jgef1E;{JVd#V^EzZ^Mj)PmYH!|8G^RZ^nZ&h!=rp z_QEMGc7f(TiyQccXS|?DORBqcf&Bo>`Cu7r++T)RSV1@kR_dagBw9r{((R6Q&6eX4 z^K%2G)qGSU?%ER)a8FQmyeR?Cgf%*TBLSRXt&XoH;Qp|VvqTsUoJ0p;BlqYAN#2_p zIuxNu&xw4_KFqK@9y;@7-QZ_f&nvoP6C3#Y?$E|}Ggc^f#54Ydnf(RDIzIJb*ECUj zo`2aLuE93`S`P>m-5mMV9^fCiqk-|mxrGsmS+w3-<J9a#?nv6u_@G|k!4jmM{8Uc} zOU1X}db7S#38}12a};a+d@=${qQ#6-{8Q8#McUY)*5TX*5tuU7HI&A;^n}1Cjf6CA z1a%wk(EN{{5E6DnJ4~eAjf|K5=PnFuZ2jMLp{wGs$li@HdP{r$?^+uE-?kJa);0AN zwt*3Q>3^#!R@W5mGT7AK|E;DR>YDmoJK3at|94Fl{?`F?tZQnx-qikvO=UH~p1#~r zmOJPFcN)&@3xOSuqh(BF>Me`IT5AUz%5wjQdD-c|?yS?3&ZbA=yV4=vtshALCi~gG zJ>#dp9zPcFo#ZAi=casaKTLbJ^Nsx=&`^aQmOHC+&iIJZVg5-!n1=ZX?Z9nw{{0TD zSTgD*BzN=^V|Egr^hfySB*=!Nob`ulc$FXT5AD6_rJ$ZZ9Zs)Riwd*>??$hERCJ2> z7yx_WZGLwEd;srNzmW`=Am{_M@sFPsvt!+F1inDwI(JZ{5Bb4C@H@Wf>>LaWAepyG zfgUZa(#H+kZDZ|U{P<kseWbcF1%3nglw&(X`5z-NXTLQB-+4ag4~M`I@2d@M+(8Gw zq%Agp&mIbM;2IZGVW`*F4Yi~jJZdAV%ufZgnX>r0-s|%MGyDUo;Ef)iO@(G&4OKER zTmL;3?!vd#w}yci!1w(AaG34z4{U@6s(RH3xXR#{>Vna*POPA}M2U!^y(iisy(J1) zV_%^{B1!_i_}U@8(_$gL>`6qFgcnzLy=sT_LTHCy&I!F|hwu3}p(<n12Z@N1Fyn*c zZz9B7dL`lUm+-q?yv_BgT8-6SPvHw}Y&O*)q9lC52Gqjy3#WzHrCFt#uSZFbh?4N# z{e$Q1@Trt$SM2cm4*ruJ#>^}}t;33hp5w+P*u`_^je5rp#oxv`+u__Rul$UDd`|X> zC<zmP>FH^Q53ECNb~wRv{Z%`(48G)RhhzwA=i&Y@5m6HQuiteRCHW-DuP)DoDNQ{} zFpLTJs!rgGy)=bCD8-X}DsNT>J{eP~Wb35&@QOj2M)<}i_CDh2geRZ;@K3}u2oHJv z;9bNs3CHwp*$VM2!pS|79wM$FJZ{vnw-MugypS*>>Q10Em8)ei5a#fMCE&yFmw}Pr zC<C+eOa5zoQE^^%SUEiB5KI?|$R4D6doL7Vb|oDmOfvy-6+b@>GMXPI5gp+uI-)g! z*N}*-317+RdL8jG-eEeXNHnMLZbEvMitJX7^Rd&RhsOyLy<2dM48O*!rbCRY^g7AN z34U`rgnPU}tli*A?l%KQ!6{xg1A2L!u2=FVe|rWj^f^PKU+0VGaYIT7j&M7RcF*#x znb6(it$NyT^Mf;?LyL1L!c1YsFdQj~n1r=`nq1eABCSWBygmoqwirU1QMn?$Lt5Sg z+r`?oHrTb^<pXBno7*`)aTc_K_xbu+(ADDuQntJPA^&C;^oL8lZ3Xo6xKgj=Q@)@A zRFBW=iN4^?XG2lQH4<IRA8~<t^ZHG*ANJ;Jk}dn?q6^|0esnfiJ-#PV<a?<xDEfil znhlBmw@K7y_>yxdx<lCR#Xoq$94Pnrv7YEBetHhHYH=4u7>ir@ht-NiOv0~yU0pR) z7mK@kESgZcBGvZ&XFhWZG_#P<N|RS<`_I#}{8Gi5?FoYe3*)4_eBV4wYlqFkt@18^ zX)ah={93;?ViM>AR3cQ@+OPK3bZKpCzv+?wm3Kj-o(;=>2flX+G>ao?V^`8n&5g4+ z@CP+`@j>`+cD~m1eXS#SJM+anXche@X?aeM2*()yMR?|SxnYPO5O!y2A0d8B_?f0x zaK1@+HxV}<)`kOa8wpFU2EK_h{PT1it=KKJKphDG&_3ra#Ev5Wbv|_VFpx~2uaXn* zya4)oIFraeTrPa&0+{6CT2JK0jSJyr5BGW^5B|<V7~^5ACu+iDpMj7NPZU|g6p5Y* zE+@wQs-e0Fd-8TGA*7pKY9g)UckjPr=e>#F-P`#?J8vewD!IoOcD^=jz9M&@s$KW| zyaJjA{9L`fwuV2|So7S*x9v3~9$5(~9swk_cQKGJs)Vk2_|;2D$o?cBuTiB?!e8E) zav8Ce@Tm6H0f@s0=Q%F@2jb?0FNbZTWe`p{9sk@PaZAF%-`}P|izH0<8nk@gwoUj0 zWvzJIMPT!9O-1cj4(*DfHiYfo*m(IO81F&<i@91+6u-R)L)i{RmS9Dqr#@K;)rGR1 z7Rm~(T#?$7)>~?iwsyV)@%+TVP&*$>d_UXQXYG6^;<L(Kui5#|#AnnrJ#FW^5`VkY z;A`g-h&L=rvEtd1h?qR1r%wWX^3h<OYl)g`W9-uIRJG{XpAYSPPvQrTyxhXh_a^?( zme~$=zAy3qljr?n=aYyxolADK^R=^}zkbj2!Bp_TOB9+3-t^_Ek(R<=TB6;(kOIH9 z1RQ<IZ$(Nbv#-Qfx3^aq#2+ldU3)Nz?SqrTla|6DkEcj9KR@3A$1aoaTnfcLStR=Q zA0@6d(jNQEB`nI}wq;=R7+250c%HWmiaqj3WIx#^@S0`NTYOsN2g|{`N$L3jT;i5N zils%RBIWaw%fZa^mV;58sB7?L#1z=oN4A}Pt4_U;)C2R2$UMCgqZ5+|`<;D*&Y|LZ zo|F)#&o~xlUA3jPNx|pfInTr;#BI3tLyCx_T8bK$Q0qG{ZwXK&ViG(TKJKKUx{)o_ zMmEGQrHk@}1>%lJcD{CGCW}0I7G6b`>Z3C5`o?RGG^X&2D{uj83YPGxdeiz*KukjR zhtW+WLUm0~rKYo5&!A%ch>~U!o^jmwSM2O8!abUPR#O+A3N4xr`v$&on_pZ7!Tisa z5a&OK6z#j|T*CI<bRJJy1%2=ZLmPr!tH1~gc=aj>6Bp{i_b!W$ryS@Rs$`!bmE3VP zEcahTqE2zCbowo=SG<hxT@CRe&yuK1R}*f;LIPcSpxO&0YxddbD~PvnCl%s6w$`ip zB3D$rHLB)|R7mtVR<Gn0ep!W{6~{@m-+Sy&SpRjx_BhZ7kc9TWSE!AXgcIS1+lWsS z?*CmX$=@XW(--Y&LZ2b*+4;DZxDcl67?i(7_^Vfr(4lgUaL^xgzz7MH=+-EF{TiI> z=c&LRig);>H82G*FIfw7hrUlG<+H9|$Lbdd=O4Ix6Y)ocN0&H|*-L~wE?A4(rSu75 z_i5)T9G3~VKAn$Qh;)VUy4lI(_Gdh79rW(?1&Kns45QqXZX*&Bemp_mUnd;Cp_+2g zZwR+7>P9>FO~Tcw9>MjZe~Z7o4v)U?sL1Yr4R_#>*Y5`sd8w<v!J4-T?`X5(5#l?9 zyE+UaM}8!H=A{R?6s4aCkM;bD@Lj?uPfmA4{4+m_=J03_eil;r;`R9D=g0N<&0^U` zFuOIkN~>+&)*JiW9eL$?oSBc-<A;vr8!=0MeLXmF<9aZ_Z#;Sf^x`MigCoyakKcZN z<MTE^8-@u1hYir2N<2e;!#3;Q;1ub8BmN-|-Uxx*xB;xjhPwRmMr@h<32Lrg#aSzI zzcwgRLoG#m#EUjUdt-C!{i|m_ww7J_`aJ6JQ)IQ-CJ5n08^FnFM0VTuB%ZPf#mhHi zM-!d{$B<Ahzq7uUcJv#}N9YBm?sKx_h&&(g9DYLj3XQec^w%2OzgDVW$%$Xw2vH&b z%2s_fXTIe{u<~A;AQ~L_$>-23XYy+Qi@3iY-vl0^QyK+oawEPBFEOc)PUK*(&1kIW zb2vV;H{(cB-}sE@z}d^AQJ;)_&StDc3NFFcJ~_7LisZrZOHnkkdC#e4V$+c2Z8qc8 zt_NSM7ttw7MHi6mt^ZwvBGGro`kflkh*ui%{TuLn_hty?Uu?z;;dghV=gH6Gw=)m^ z%ohCgxOp=;RcL<#AjLPRq)1&F@o|m#m_~ebBfeuJUT(loGbkn}#nM`_UgT~s;EDWj z3$%9)vp)6=3{@m=##d~`yNM?gh%bEsqvXv8Y^^`7T*9oBTcSSSY%lN`Q7iLm(4Hds zG~$~!;w_DMzec<-AGrluiRjwh2CktKdH}sCq|yFX>&#aMv{EEXqZuL9%?LhwD>$|I z^PDY~?#LUCZ9t=Hfi%ypRKvsTZ@RqscIXgD=cV<mSE~+xx8}(BvF#X0Tv+BH{Uys9 zGSBDKztH66Xe&UorT3?CYmU^vKw3H0===EkQGZ7M)`<VT5q}T(pq*GbcpI4h)(uDg z_I8|{iJQQ&ncYWv1;o9xk(FP7x5F!|uoJr%d}4oPwDzBJ_QJpD4dcN(?fvFX+rdM` zZxQ}GP_ko(zEwH$;dXJ<PFx7rXwThUCkf)u?8IvdiW~301Kb&X%s7uGaodg1hXlo4 z$t+2^vP<7o{P+huz|C~Nk>~H~o^z+2;QOS`Ggt@BwdMnN;>W5s_2$Q(ow~>N25nk{ z{`NoX_}i3eTUXO1#CkY=ViybuH|@d6X#Z2Kzg1~hSB3B0g-h!>Uc3j|IZM09aj88& z^%91u$!<J;Vh9KD=-qGxI&iOj5aJ(ded&hpJAdD!JKC-8L4&cnYKZm6ExDikeSqS0 z)#pjIlcvhg@4>Hd@jCW=318VeYdS7;lO;u=Up#6ru7tvu@MBb0P0eAyBFP$pH~8~d z=qx#E{^N&J^wVL!B6ZV?|H+N}Ak5*iBK6RV<|$H79lfkby>zrsk$UUsj3V{X(P2gE zODGKb>4H^?l%%6Yiqv02wqR?I?W-PI?_SHp$TvO-ltv4BfHs&8Bk;{btId7)W4{OL zIDJ3%dypQRRr~SsbuiztAMc=3_@(`LXKXtFO}OP%%n`c33}$f%;~uX<kac&$pS`q~ z(4o|pM08EU#`&EoM@iL1eB;ab^_(5VQN8&xZlrO9EC&!xBs36_n8x^zM==#xK;kPT zewC2>Aw)kB>P9H+Afj?YBM7~82wnQH3SC-u5SP$5htR-jLW8Ri{Xys?q1K16XJh%P zD*Ri9Ov2eZUWZuBvA6vGA^Z@YO9ctsS_L*3M>vtMCOn>Sh6`P9()HK`nwP;|HQQqo zaLlz^PZB?^iA^X@Br)B8lDHYrr%1^sYQ!4`EbCUk%0#USzj_#)pI9%@WYr!=AP@hq z3GA*O!;h(BUcsLCeg!Nrr#kZ$7zR+lqmE+-KYJDPgPKjaY5a8*<KlB1RVGqVyqGWQ zfn7?nr*-wWk7FRloj_wwClKvCf&0h9qhR8Fk%fi2QYB)C1$aX6ua985aUNN5zTKGX TYxwQ@TORltzSUmiGCuwf=gjy6