store generated files in git to allow go get
This commit is contained in:
parent
796b3c2a4b
commit
ffc0436aed
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,3 +1 @@
|
||||
iniparser.gen.go
|
||||
docreflect.gen.go
|
||||
.build
|
||||
|
||||
62
docreflect.gen.go
Normal file
62
docreflect.gen.go
Normal file
@ -0,0 +1,62 @@
|
||||
package wand
|
||||
import "code.squareroundforest.org/arpio/docreflect"
|
||||
func init() {
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate", "Package generate provides a generator to generate go code from go docs that registers doc entries\nfor use with the docreflect package.\n")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.GenerateRegistry", "GenerateRegistry generates a Go code file to the output, including a package init function that\nwill register the documentation of the declarations specified by their gopath.\n\nThe gopath argument accepts any number of package, package level symbol, of struct field paths.\nIt is recommended to use package paths unless special circumstances.\n\nSome important gotchas to keep in mind, GenerateRegistry does not resolve type references like\ntype aliases, or type definitions based on named types, and it doesn't follow import paths.\n\nfunc(w, outputPackageName, gopath)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.cleanPaths", "\nfunc(gopath)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.collectGoDirs", "\nfunc(o)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.findFieldDocs", "\nfunc(str, fieldPath)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.findGoMod", "\nfunc(dir)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.fixDocPackage", "\nfunc(p)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.format", "\nfunc(w, pname, docs)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.funcDocs", "\nfunc(f)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.funcParams", "\nfunc(f)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.generate", "\nfunc(o, gopaths)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.getGoroot", "\nfunc()")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.importPackages", "\nfunc(o, godirs, paths)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.initOptions", "\nfunc()")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.merge", "\nfunc(m)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.methodDocs", "\nfunc(importPath, t)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.modCache", "\nfunc()")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.options", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.options.gomod", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.options.goroot", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.options.modules", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.options.wd", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.packageDocs", "\nfunc(pkg)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.packageFuncDocs", "\nfunc(importPath, funcs)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.packagePaths", "\nfunc(p)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.parsePackages", "\nfunc(pkgs)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.parserInclude", "\nfunc(pkg)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.readGomod", "\nfunc(wd)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.set", "\nfunc(m, key, value)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.splitGopath", "\nfunc(p)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.structFieldDocs", "\nfunc(t, fieldPath)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.structFieldsDocs", "\nfunc(importPath, t)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.symbolDocs", "\nfunc(pkg, gopath)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.symbolPath", "\nfunc(packagePath, name)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.takeDocs", "\nfunc(pkgs, gopaths)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.takeFieldDocs", "\nfunc(packagePath, prefix, f)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.typeDocs", "\nfunc(importPath, types)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.typeMethodDocs", "\nfunc(t, name)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.unpack", "\nfunc(e)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/docreflect/generate.valueDocs", "\nfunc(packagePath, v)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.Docreflect", "\nfunc(out, packageName, gopaths)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.Exec", "\nfunc(o, function, args)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.ExecOptions", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.ExecOptions.CacheDir", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.ExecOptions.NoCache", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.ExecOptions.PurgeCache", "")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.Man", "\nfunc(out, commandDir)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.Markdown", "\nfunc(out, commandDir)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.copyGomod", "\nfunc(fn, dst, src)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.execCommandDir", "\nfunc(out, commandDir, env)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.execInternal", "\nfunc(command, args)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.execTransparent", "\nfunc(command, args)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.execc", "\nfunc(stdin, stdout, stderr, command, args, env)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.findGomod", "\nfunc(wd)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.functionHash", "\nfunc(function)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.printFile", "\nfunc(fn, pkg, expression)")
|
||||
docreflect.Register("code.squareroundforest.org/arpio/wand/tools.splitFunction", "\nfunc(function)")
|
||||
}
|
||||
1050
iniparser.gen.go
Normal file
1050
iniparser.gen.go
Normal file
File diff suppressed because it is too large
Load Diff
@ -120,7 +120,7 @@ func findGomod(wd string) (string, bool) {
|
||||
}
|
||||
}
|
||||
|
||||
func copyFile(dst, src string) error {
|
||||
func copyGomod(fn, dst, src string) error {
|
||||
srcf, err := os.Open(src)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to open file: %s; %w", src, err)
|
||||
@ -133,8 +133,22 @@ func copyFile(dst, src string) error {
|
||||
}
|
||||
|
||||
defer dstf.Close()
|
||||
if _, err := io.Copy(dstf, srcf); err != nil {
|
||||
return fmt.Errorf("failed to copy file %s to %s; %w", src, dst, err)
|
||||
b, err := io.ReadAll(srcf)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to read go.mod file %s: %w", src, err)
|
||||
}
|
||||
|
||||
s := string(b)
|
||||
ss := strings.Split(s, "\n")
|
||||
for i := range ss {
|
||||
if strings.HasPrefix(ss[i], "module ") {
|
||||
ss[i] = fmt.Sprintf("module %s", fn)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if _, err := dstf.Write([]byte(strings.Join(ss, "\n"))); err != nil {
|
||||
return fmt.Errorf("failed to write go.mod file %s: %w", dst, err)
|
||||
}
|
||||
|
||||
return nil
|
||||
@ -219,7 +233,7 @@ func Exec(o ExecOptions, function string, args ...string) error {
|
||||
defer os.Chdir(wd)
|
||||
gomodPath, hasGomod := findGomod(wd)
|
||||
if hasGomod {
|
||||
if err := copyFile(path.Join(functionDir, "go.mod"), gomodPath); err != nil {
|
||||
if err := copyGomod(expression, path.Join(functionDir, "go.mod"), gomodPath); err != nil {
|
||||
return err
|
||||
}
|
||||
} else {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user