builtin_ns.go 727 B

1234567891011121314151617181920212223242526
  1. package eval
  2. import (
  3. "strconv"
  4. "syscall"
  5. "src.elv.sh/pkg/buildinfo"
  6. "src.elv.sh/pkg/eval/vars"
  7. )
  8. var builtinNs = BuildNsNamed("").AddVars(map[string]vars.Var{
  9. "_": vars.NewBlackhole(),
  10. "pid": vars.NewReadOnly(strconv.Itoa(syscall.Getpid())),
  11. "ok": vars.NewReadOnly(OK),
  12. "nil": vars.NewReadOnly(nil),
  13. "true": vars.NewReadOnly(true),
  14. "false": vars.NewReadOnly(false),
  15. "buildinfo": vars.NewReadOnly(buildinfo.Value),
  16. "version": vars.NewReadOnly(buildinfo.Value.Version),
  17. "paths": vars.NewEnvListVar("PATH"),
  18. "nop" + FnSuffix: vars.NewReadOnly(nopGoFn),
  19. })
  20. func addBuiltinFns(fns map[string]any) {
  21. builtinNs.AddGoFns(fns)
  22. }