summaryrefslogtreecommitdiff
path: root/sort.go
diff options
context:
space:
mode:
Diffstat (limited to 'sort.go')
-rw-r--r--sort.go32
1 files changed, 21 insertions, 11 deletions
diff --git a/sort.go b/sort.go
index 5d591c2..44b0798 100644
--- a/sort.go
+++ b/sort.go
@@ -1,27 +1,37 @@
package main
import (
+ "fmt"
"os"
)
+// this file is named poorly. It has more than Sort()
+
func (pb *Files) makeNewSortfile(pf *File) error {
- f, _ := os.OpenFile(pf.Filebase+".newsort.pb.go", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
+ w, _ := os.OpenFile(pf.Filebase+".sort.pb.go", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
- header(f, pf)
- pf.syncLock(f)
+ header(w, pf)
+ pf.syncLock(w)
if argv.Mutex {
// use the mutex lock from the modified protoc.pb.go file
pf.Bases.Lockname = "all.Lock"
}
- pf.Base.iterTop(f)
- pf.Base.iterNext(f)
- pf.iterSelect(f)
- pf.appendUnique(f) // Append() enforce no unique keys
- pf.iterSortBy(f)
- pf.iterAll(f)
- pf.iterDelete(f)
- pf.iterFind(f)
+ pf.Base.iterTop(w)
+ pf.Base.iterNext(w)
+ pf.selectAllFunc(w)
+ pf.iterSelect(w)
+
+ fmt.Fprintln(w, "// maybe seperate files here?")
+
+ pf.appendUnique(w) // Append() enforce no unique keys
+ pf.sortByFunc(w)
+ if argv.Delete {
+ pf.deleteWithCopyFunc(w)
+ } else {
+ pf.deleteFunc(w)
+ }
+ pf.findFunc(w)
return nil
}