package main

import (
	
	
	
	
)

// updateGoModVersion updates go directive in go.mod file.
func (,  string) (string, error) {
	,  := loadGoModVersion()
	if  != nil {
		return "", 
	}

	 := exec.Command("go", "mod", "edit", "-go", )
	.Stderr = os.Stderr
	.Dir = 
	return , .Run()
}

// loadGoModVersion returns the value of the go directive in go.mod file.
func ( string) (string, error) {
	var  bytes.Buffer
	 := exec.Command("go", "mod", "edit", "-json")
	.Stdout = &
	.Stderr = os.Stderr
	.Dir = 
	if  := .Run();  != nil {
		return "", 
	}

	var  struct{  string }
	if  := json.Unmarshal(.Bytes(), &);  != nil {
		return "", 
	}
	return ., nil
}