init.go 596 B

1234567891011121314151617181920212223242526
  1. package preload
  2. import (
  3. "fmt"
  4. "sync"
  5. )
  6. var preload_script_map = map[string]string{}
  7. var preload_script_map_lock = &sync.RWMutex{}
  8. func SetupDependency(package_name string, version string, script string) {
  9. preload_script_map_lock.Lock()
  10. defer preload_script_map_lock.Unlock()
  11. preload_script_map[package_name] = script
  12. }
  13. func GetDependencies(package_name string, version string) string {
  14. preload_script_map_lock.RLock()
  15. defer preload_script_map_lock.RUnlock()
  16. if script, ok := preload_script_map[package_name]; ok {
  17. return script
  18. }
  19. return fmt.Sprintf("import %s", package_name)
  20. }