Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-26 Thread YuanSheng Wang
On Thu, Nov 26, 2020 at 4:17 PM Zexuan Luo wrote: > What about `not or` and `not and`? We can allow space in the operator. > this style is better than before. seems good for me. ^_^ > > YuanSheng Wang 于2020年11月26日周四 下午2:59写道: > > > On Thu, Nov 26, 2020 at 2:34 PM Zexuan Luo > wrote: > > > >

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-26 Thread Zexuan Luo
What about `not or` and `not and`? We can allow space in the operator. YuanSheng Wang 于2020年11月26日周四 下午2:59写道: > On Thu, Nov 26, 2020 at 2:34 PM Zexuan Luo wrote: > > > I mean using `!or` to represent `not (xxx or xxx)`, and so do `!and`. > > > > I think it is not easy for developers understand

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread YuanSheng Wang
On Thu, Nov 26, 2020 at 2:34 PM Zexuan Luo wrote: > I mean using `!or` to represent `not (xxx or xxx)`, and so do `!and`. > I think it is not easy for developers understand this. > > YuanSheng Wang 于2020年11月26日周四 下午2:15写道: > > > one question, do we support the operator `!or`, `!and` ? > > >

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread Zexuan Luo
I mean using `!or` to represent `not (xxx or xxx)`, and so do `!and`. YuanSheng Wang 于2020年11月26日周四 下午2:15写道: > one question, do we support the operator `!or`, `!and` ? > > it is not easy to understand for me :( > > On Thu, Nov 26, 2020 at 12:28 PM Zexuan Luo > wrote: > > > Personally speaking,

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread YuanSheng Wang
one question, do we support the operator `!or`, `!and` ? it is not easy to understand for me :( On Thu, Nov 26, 2020 at 12:28 PM Zexuan Luo wrote: > Personally speaking, I think the SO way is more readable. Because the > logical operator is the same level with the conditions, therefore we can >

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread Zexuan Luo
Personally speaking, I think the SO way is more readable. Because the logical operator is the same level with the conditions, therefore we can know the conditions and the operator are in the same expression. Chao Zhang 于2020年11月25日周三 下午5:36写道: > The expression in Stack Overflow is good, but the

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread Chao Zhang
The expression in Stack Overflow is good, but the readability is not satifactory, what about modifying it to make it more hierarchical? For example, promoting the level of logical operators. Chao Zhang https://github.com/tokers On November 25, 2020 at 4:04:29 PM, YuanSheng Wang (membp...@apache.o

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread Zexuan Luo
So you mean ``` [ "!AND", -- optional ["arg_name","==","yaml"], [ "!OR", ["arg_name","==","json"], ["arg_weight",">",10] ] ] ``` for the `not` logical operator? YuanSheng Wang 于2020年11月25日周三 下午4:03写道: > I think we can mainly use `array

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread YuanSheng Wang
I got this idea from Stack Overfollow[1] [1] https://stackoverflow.com/questions/20737045/representing-logic-as-data-in-json On Wed, Nov 25, 2020 at 4:02 PM YuanSheng Wang wrote: > I think we can mainly use `array`, I write a new style. > > this style can be compatible with the old rules. > >

Re: [DISCUSS] Add a small DSL to support complex conditions

2020-11-25 Thread YuanSheng Wang
I think we can mainly use `array`, I write a new style. this style can be compatible with the old rules. [ "AND", -- optional ["arg_name","==","yaml"], [ "OR", ["arg_name","==","json"], ["arg_weight",">",10] ] ] On Wed, Nov 25, 2020

[DISCUSS] Add a small DSL to support complex conditions

2020-11-24 Thread Zexuan Luo
Currently we support a DSL to match routes with variables: ``` [ ["arg_name","==","json"], ["arg_weight",">",10], ["arg_weight","!",">",15] ] ``` is evaluated to `ngx.var.arg_name == "json" and ngx.var.arg_weight > 10 and not ngx.var.arg_weight > 15`. It would be better if the DSL c