Rename env to $env

This commit is contained in:
Anton Medvedev
2023-08-15 23:34:16 +02:00
parent ffc47e10cc
commit a012738292
6 changed files with 30 additions and 30 deletions
+3 -3
View File
@@ -153,9 +153,9 @@ func TestBuiltin_types(t *testing.T) {
{`first(ArrayOfInt)`, reflect.Int},
{`last(ArrayOfString)`, reflect.String},
{`last(ArrayOfInt)`, reflect.Int},
{`get(env, 'str')`, reflect.String},
{`get(env, 'num')`, reflect.Int},
{`get(env, 'ArrayOfString')`, reflect.Slice},
{`get($env, 'str')`, reflect.String},
{`get($env, 'num')`, reflect.Int},
{`get($env, 'ArrayOfString')`, reflect.Slice},
}
for _, test := range tests {
+3 -3
View File
@@ -135,7 +135,7 @@ func (v *visitor) NilNode(*ast.NilNode) (reflect.Type, info) {
}
func (v *visitor) IdentifierNode(node *ast.IdentifierNode) (reflect.Type, info) {
if node.Value == "env" {
if node.Value == "$env" {
return mapType, info{}
}
if fn, ok := v.config.Functions[node.Value]; ok {
@@ -399,7 +399,7 @@ func (v *visitor) MemberNode(node *ast.MemberNode) (reflect.Type, info) {
base, _ := v.visit(node.Node)
prop, _ := v.visit(node.Property)
if an, ok := node.Node.(*ast.IdentifierNode); ok && an.Value == "env" {
if an, ok := node.Node.(*ast.IdentifierNode); ok && an.Value == "$env" {
// If the index is a constant string, can save some
// cycles later by finding the type of its referent
if name, ok := node.Property.(*ast.StringNode); ok {
@@ -660,7 +660,7 @@ func (v *visitor) checkBuiltinGet(node *ast.BuiltinNode) (reflect.Type, info) {
val := node.Arguments[0]
prop := node.Arguments[1]
if id, ok := val.(*ast.IdentifierNode); ok && id.Value == "env" {
if id, ok := val.(*ast.IdentifierNode); ok && id.Value == "$env" {
if s, ok := prop.(*ast.StringNode); ok {
return v.config.Types[s.Value].Type, info{}
}
+3 -3
View File
@@ -946,9 +946,9 @@ func TestCheck_env_keyword(t *testing.T) {
input string
want reflect.Kind
}{
{`env['str']`, reflect.String},
{`env['num']`, reflect.Int},
{`env[name]`, reflect.Interface},
{`$env['str']`, reflect.String},
{`$env['num']`, reflect.Int},
{`$env[name]`, reflect.Interface},
}
for _, test := range tests {
+1 -1
View File
@@ -227,7 +227,7 @@ func (c *compiler) NilNode(_ *ast.NilNode) {
}
func (c *compiler) IdentifierNode(node *ast.IdentifierNode) {
if node.Value == "env" {
if node.Value == "$env" {
c.emit(OpLoadEnv)
return
}
+2 -2
View File
@@ -54,7 +54,7 @@ func CreateTypesTable(i interface{}) TypesTable {
for _, key := range v.MapKeys() {
value := v.MapIndex(key)
if key.Kind() == reflect.String && value.IsValid() && value.CanInterface() {
if key.String() == "env" { // Could check for all keywords here
if key.String() == "$env" { // Could check for all keywords here
panic("attempt to misuse env keyword as env map key")
}
types[key.String()] = Tag{Type: reflect.TypeOf(value.Interface())}
@@ -97,7 +97,7 @@ func FieldsFromStruct(t reflect.Type) TypesTable {
}
}
}
if fn := FieldName(f); fn == "env" { // Could check for all keywords here
if fn := FieldName(f); fn == "$env" { // Could check for all keywords here
panic("attempt to misuse env keyword as env struct field tag")
} else {
types[FieldName(f)] = Tag{
+18 -18
View File
@@ -1688,24 +1688,24 @@ func TestEnv_keyword(t *testing.T) {
code string
want interface{}
}{
{"env['space test']", "ok"},
{"env['Section 1-2a']", "ok"},
{`env["c:\\ndrive\\2015 Information Table"]`, "ok"},
{"env['%*worst function name ever!!']", "ok"},
{"env['String Map'].one", "two"},
{"env['1'] + env['2']", "ok"},
{"1 + env['num'] + env['num']", 21},
{"MIN(env['num'],0)", 0},
{"env['nu' + 'm']", 10},
{"env[red + irect]", 10},
{"env['String Map']?.five", ""},
{"env.red", "n"},
{"env?.blue", nil},
{"env.mylist[1]", 2},
{"env?.OtherMap?.a", "b"},
{"env?.OtherMap?.d", ""},
{"'num' in env", true},
{"get(env, 'num')", 10},
{"$env['space test']", "ok"},
{"$env['Section 1-2a']", "ok"},
{`$env["c:\\ndrive\\2015 Information Table"]`, "ok"},
{"$env['%*worst function name ever!!']", "ok"},
{"$env['String Map'].one", "two"},
{"$env['1'] + $env['2']", "ok"},
{"1 + $env['num'] + $env['num']", 21},
{"MIN($env['num'],0)", 0},
{"$env['nu' + 'm']", 10},
{"$env[red + irect]", 10},
{"$env['String Map']?.five", ""},
{"$env.red", "n"},
{"$env?.blue", nil},
{"$env.mylist[1]", 2},
{"$env?.OtherMap?.a", "b"},
{"$env?.OtherMap?.d", ""},
{"'num' in $env", true},
{"get($env, 'num')", 10},
}
for _, tt := range tests {