From 4f2803fa04a094158c72f937f5cf27c51863223d Mon Sep 17 00:00:00 2001 From: gentee Date: Wed, 11 Nov 2020 21:06:20 +0500 Subject: [PATCH 1/4] Updated gentee version --- assets.go | 2 +- go.mod | 2 +- go.sum | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/assets.go b/assets.go index b741fe7..728750f 100644 --- a/assets.go +++ b/assets.go @@ -687,7 +687,7 @@ dXfvt7uH3SP4Z/Bv/t2/tMZ8S49kS5NhzKgjfsQL8Sv+7U/2GQAA///5Sxx5ugIAAA== name: "message.yaml", local: "../eonza-assets/scripts/message.yaml", size: 4300, - modtime: 1604999993, + modtime: 1605007803, compressed: ` H4sIAAAAAAAC/9xX3U4cNxS+36c48ihit90lELo0ncBKLWkqRYoqNVVvGATe2bOLkxkbbM8ApUhN7qr2 Faqqb0AroSLU0FfwvlFlz8/OzIIgKBcoXCD72N93POf77LUVas34RPktAE5j9CFGpegEWwCa6Qh9WPC2 diff --git a/go.mod b/go.mod index 6e0fd1c..54d6145 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.15 require ( github.com/alecthomas/chroma v0.8.1 github.com/dgrijalva/jwt-go v3.2.0+incompatible - github.com/gentee/gentee v1.16.0 + github.com/gentee/gentee v1.17.0 github.com/gorilla/websocket v1.4.2 github.com/kataras/golog v0.1.5 github.com/labstack/echo/v4 v4.1.17 diff --git a/go.sum b/go.sum index f24991c..c449822 100644 --- a/go.sum +++ b/go.sum @@ -50,6 +50,8 @@ github.com/gentee/gentee v1.15.1 h1:S9p7S9ZM/1cUxtvfar8olPz6ZoL0/CEbbqPCy8M4G8E= github.com/gentee/gentee v1.15.1/go.mod h1:XeyqrgfEuwpfJM/YO2A1uUKbnqUFKnc0qcq6NOX1ggk= github.com/gentee/gentee v1.16.0 h1:qhif/bGyJrOaAqeGaP8e8969otOmgfXSYZ3msw+Fmqs= github.com/gentee/gentee v1.16.0/go.mod h1:XeyqrgfEuwpfJM/YO2A1uUKbnqUFKnc0qcq6NOX1ggk= +github.com/gentee/gentee v1.17.0 h1:NLTouUGQM2Rs1eeDHCl9m+GHjUbYMfje3WcKY+lvhKA= +github.com/gentee/gentee v1.17.0/go.mod h1:XeyqrgfEuwpfJM/YO2A1uUKbnqUFKnc0qcq6NOX1ggk= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/gorilla/csrf v1.6.0/go.mod h1:7tSf8kmjNYr7IWDCYhd3U8Ck34iQ/Yw5CJu7bAkHEGI= From 7c867121e32d52f2b8cd6d02f3d9316e6e842e6d Mon Sep 17 00:00:00 2001 From: gentee Date: Thu, 12 Nov 2020 09:02:55 +0500 Subject: [PATCH 2/4] Added Length to Set Variable --- script/embedded.go | 2 +- script/gentee.go | 16 ---------------- script/varobj.go | 8 ++++++++ 3 files changed, 9 insertions(+), 17 deletions(-) diff --git a/script/embedded.go b/script/embedded.go index 9c720a7..0c661a5 100644 --- a/script/embedded.go +++ b/script/embedded.go @@ -120,6 +120,7 @@ var ( {Prototype: `Condition(str,str) bool`, Object: Condition}, {Prototype: `File(str) str`, Object: FileLoad}, {Prototype: `Form(str)`, Object: Form}, + {Prototype: `IsObjVar(str) bool`, Object: IsVarObj}, {Prototype: `IsVar(str) bool`, Object: IsVar}, {Prototype: `LogOutput(int,str)`, Object: LogOutput}, {Prototype: `Macro(str) str`, Object: Macro}, @@ -137,7 +138,6 @@ var ( {Prototype: `GetVarObj(str) obj`, Object: GetVarObj}, // For gentee {Prototype: `YamlToMap(str) map`, Object: YamlToMap}, - {Prototype: `FindFirstRegExp(str,str) arr.str`, Object: FindFirstRegExpºStrStr}, } ) diff --git a/script/gentee.go b/script/gentee.go index 43d5f33..9dbd6d5 100644 --- a/script/gentee.go +++ b/script/gentee.go @@ -5,8 +5,6 @@ package script import ( - "regexp" - "github.com/gentee/gentee" "github.com/gentee/gentee/core" "gopkg.in/yaml.v2" @@ -27,17 +25,3 @@ func YamlToMap(in string) (*core.Map, error) { } return ret.(*core.Map), nil } - -// FindFirstRegExpºStrStr returns an array of the first successive matches of the expression -func FindFirstRegExpºStrStr(src, rePattern string) (*core.Array, error) { - re, err := regexp.Compile(rePattern) - if err != nil { - return nil, err - } - list := re.FindStringSubmatch(src) - out := core.NewArray() - for _, sub := range list { - out.Data = append(out.Data, sub) - } - return out, nil -} diff --git a/script/varobj.go b/script/varobj.go index 4d84ade..040da9d 100644 --- a/script/varobj.go +++ b/script/varobj.go @@ -111,6 +111,14 @@ func GetVarObj(name string) (*core.Obj, error) { return val.(*core.Obj), nil } +func IsVarObj(name string) int64 { + _, ok := dataScript.ObjVars[len(dataScript.ObjVars)-1].Load(name) + if ok { + return 1 + } + return 0 +} + func setRawVarObj(shift int, name string, value *core.Obj) error { off := len(dataScript.ObjVars) - 1 - shift if off < 0 { From e2218096db203abdb3c35bebd59af51c36941368 Mon Sep 17 00:00:00 2001 From: gentee Date: Thu, 12 Nov 2020 09:03:21 +0500 Subject: [PATCH 3/4] Updates assets --- assets.go | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/assets.go b/assets.go index 728750f..71aaad2 100644 --- a/assets.go +++ b/assets.go @@ -914,26 +914,27 @@ jMO9ipTX7G8AAAD//5srcUP/AgAA "/eonza-assets/scripts/set-variable.yaml": { name: "set-variable.yaml", local: "../eonza-assets/scripts/set-variable.yaml", - size: 2521, - modtime: 1603792872, + size: 2861, + modtime: 1605153673, compressed: ` -H4sIAAAAAAAC/4xU3Y7bRBS+z1Mc3IsmsP3ZIrgYKVSrtlAhFpCyVFphVDnZSdaVM2Nmxo4QWmm7EaoQ -qCDELaoEL7BdSNktbPoKZ94IzRk7sR23Ihexfc75vvPN+RnNjYnFRLMOgIimnIHm5loeqTgaJrwDYGKT -cAZXrzzU3OSRunK1A3DA9Yhs7oUsiZwkPOcJg/c7AJlQmWBgVOYoDnmSbvA6YxKJCQOVddJIRVPNOtcK -De6/mvt6Hilno1Tmm5QzuNUBkKmJpSDtAIp/ncWKHxRpS6o8SrImV5JVmbZXsUmsTS10nIkRpaiEv9dM -7FD+reRxMDK0cREVuYju3eKrRrl2a6NWltjwaSXgWqU30VCnkTlccbsfnZNB4WqHpSkXB60o8rSCuMjL -OWiAvKcVlMgZb8WQoxWSpWk7hBytECFnbQAhZ63hOhtq05rCe2pNpRnd6CpZueFKN/p6q+Omm9rFhW9a -2SUGO0Mtk8xw+LzsTNEKBjvrwj/0a7ajdTwREHltYCS9rhYJoOgIg4+4gXsij5UUUy4MPKhFUaUZfOIe -cCfShVnIGYM7mVIOsRdPC7PfdgYD3uTxtWEwoGcsJt5MXWHwhXuU9Cprnhx/xuf2MS7xH/vUnuCl/QEv -AF/ZuT2xP9Yrgb/iEp/jKZ7h+drra4LP7DGe28d4hkvvBfwbL/HUPsEFXuI5LgBf4cIe4wL/JdMlLvGi -Xi98RkLm9knJ0YDYuX0KuMSX9tjO8YWntj/V6om/4Tm+oJwXQOA/nTJ7Yo8rBcbfcYEv7dx+jwun7cyn -KbnKauMfDomnpPbsDarqraCD/OWTOrl4WusJ/uII7HftIkfygDMI5PAR5O6vDx9rKfbkZ8NHXXe39SAU -8Zh8t+HbUNBVNIa3/Tj2+3CztFZWCPpuGh9Equu2p+f9R/4xlgpyd5lBLHzKCl4b5VcN+rAbjZTsusgu -xW9BGJAvDHrXtVHdXq8CnMVmdAjVaAgDd+uuotfBo0hzCINiLMMA2Er2zlC7rezSdwuEpjMMSsA7fS93 -I9APWRjUi1MU7y3C3Aa2OiuxNSNLTa6W90TepeCKpqONrDSUa3V9v+6vO4yQs/8tMAz29/f3b+zu3rh7 -F+7fZ9Mp0zoMXif5Q6mmkfGKt+BTOas1q0W5n+UWObEwIMdjzQ0kXEzMYcMfKZoY6MMgTeJVyjBgYdBr -xBY8fUfa3VPxdJBGI+4gX978qteMdlPumD+AbWBF8lbs9ia2rIO/JX0Dtor8WwXXmwtCy1ttJV2ttVYe -heIoFIP1om354F7Q+S8AAP//DjGPENkJAAA= +H4sIAAAAAAAC/4xVUW8bxRN/96eY//Whdv9J2xTBw0pHFbWFghpASqgUcag6O2vnqvPusbt3FkKR0lio +QqCCUF9RJfgCacDFaYn7FWa/EdrdO/vuvI3wg8+emd9vZuc3syepUgkbSdIBYPGYEpBUbRaxSOJ+SjsA +KlEpJXD1yiNJVRGLK1c7AAdUDqzN/LCWlI9SWtCUwAcdgJyJnBFQIjcUhzTN1niNMY3ZiIDIO1ks4rEk +nc2yBvNdz329iIWx2VTq24wSuNUB4JlKOLO1Awj6TZ4IelCmraiKOM3bXGleZ9paxqaJVI3QYc4GNkUt +/P12YoNyvyoeA7MGH5elsi5L9175r0G5cksllpZE0XEtYLOmTdyXWawOl9zmY89JoHT5YVlG2YEXZT1e +EGVFNQctkPN4QSllI399zuMH8Qn1JrIOLyTPMj/EOrwQxic+AOMTb7jM+1J5UzhPYxLsYK+NgrVSRYVs +DcOtjlkJqzFlTulKWgLbfcnTXFH4opKz1I/A9kqtR243t6VMRgxiVxsobn8utw+glJHAx1TBPVYkgrMx +ZQoeNqKcOgQerFRyshB4YB5wJ5ZlKOMTAndyIQzLXjIuze7aILBL29yuXwR27TNhI2e2ShH40jwqepG3 +u4G/4Ev9BBf4Rj/TJ3ihf8RzwLd6qk/0T83u4HNc4Es8xTOcr7yuT/hCH+NcP8EzXDgv4N94gaf6Kc7w +Auc4A3yLM32MM/zHmi5wgefNHuILW8hUP604WhA91c8AF/haH+spvnLU+udmj/E5vsG5Sd7oM/6Gc3xl +azkHS/qnqVif6ONa4/F3nOFrPdU/4MzUfObSVzkqFfAPg8RTe4qzS6ptSmQP+JdLao5RlVhqhb8aAv29 +v8gBP6AEAt5/DIX5CuFTydke/7z/uGsuzx5ELBla3234LmL2rhvCNTe6YQg3K2tt3SA0k/swFl2zaT3n +P3KPIRdQmNsSEuZS1vBSCbeWEMJOPBC8ayK7Nn4DosD6oqB3XSrR7fVqwEmiBodQj4YoMNf6MnoVPIgl +hSgoxzUKgCzL3u5Ls8Fd+98DsVMbBRXg/6Erdy3QDV8UNJtTNu9/FnMbyPKslq0dWdVkenmPFV0bXKvp +aC2rG1ZvVqbMZe4p5hNpdHLnBXvjQwjXSvnabXAfmlY4MyV+6MqzjpZ0FX3pyY1uKWWXn9ks4kqR0F19 +7xKQ8cl/FiUK9vf392/s7Ny4exfu3yfjMZEyCt5V7EdcjGPlVNqAz/ikMaCeyt3+esoxYvHhUFJVvoBb +/ljYLYEQdrM0WaaMAhIF7XaXPKEh7e6JZLybxQNqIF/d/LrXjjabbZg/hC2o3v5e7NY6tuqDe2M4ATbK +/Bsl1+UNsRdWXUr7mmlIeRSxo4jtri6XDRfcC/4NAAD//1zMYkUtCwAA `, }, From 551489f0f58f148c176f085d965ea167c68b182d Mon Sep 17 00:00:00 2001 From: gentee Date: Thu, 12 Nov 2020 09:31:18 +0500 Subject: [PATCH 4/4] Fixed IsVar --- script/embedded.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/script/embedded.go b/script/embedded.go index 0c661a5..064580a 100644 --- a/script/embedded.go +++ b/script/embedded.go @@ -120,7 +120,7 @@ var ( {Prototype: `Condition(str,str) bool`, Object: Condition}, {Prototype: `File(str) str`, Object: FileLoad}, {Prototype: `Form(str)`, Object: Form}, - {Prototype: `IsObjVar(str) bool`, Object: IsVarObj}, + {Prototype: `IsVarObj(str) bool`, Object: IsVarObj}, {Prototype: `IsVar(str) bool`, Object: IsVar}, {Prototype: `LogOutput(int,str)`, Object: LogOutput}, {Prototype: `Macro(str) str`, Object: Macro}, @@ -273,7 +273,7 @@ func FileLoad(rt *vm.Runtime, fname string) (ret string, err error) { } func GetVar(name string) (ret string, err error) { - if IsVar(name) { + if IsVar(name) != 0 { id := len(dataScript.Vars) - 1 ret, err = Macro(dataScript.Vars[id][name]) } @@ -330,11 +330,14 @@ func InitCmd(name string, pars ...interface{}) bool { return true } -func IsVar(key string) bool { +func IsVar(key string) int64 { dataScript.Mutex.Lock() defer dataScript.Mutex.Unlock() _, ret := dataScript.Vars[len(dataScript.Vars)-1][key] - return ret + if ret { + return 1 + } + return 0 } func loadForm(data string, form *[]map[string]interface{}) error {