| 442 | } |
| 443 | |
| 444 | func mapToObjectMembers(env map[string]string) []hujson.ObjectMember { |
| 445 | members := make([]hujson.ObjectMember, 0, len(env)) |
| 446 | for k, v := range env { |
| 447 | members = append(members, hujson.ObjectMember{ |
| 448 | Name: hujson.Value{ |
| 449 | Value: hujson.String(k), |
| 450 | BeforeExtra: []byte{'\n'}, |
| 451 | }, |
| 452 | Value: hujson.Value{Value: hujson.String(v)}, |
| 453 | }) |
| 454 | } |
| 455 | // Make the order deterministic so we don't keep moving fields around. |
| 456 | slices.SortFunc(members, func(a, b hujson.ObjectMember) int { |
| 457 | return cmp.Compare(a.Name.Value.(hujson.Literal).String(), b.Name.Value.(hujson.Literal).String()) |
| 458 | }) |
| 459 | return members |
| 460 | } |
| 461 | |
| 462 | func (c *configAST) setEnv(env map[string]string) { |
| 463 | c.createMemberIfMissing("env").Value.Value = &hujson.Object{ |