Format generated code
This commit is contained in:
parent
1e34c14bb0
commit
4dd6885ff6
1
bind.go
1
bind.go
@ -306,4 +306,3 @@ func Bind5[In, Out, T, T2, T3, T4, T5 any](
|
|||||||
return Succeed(anyConsumed, val6, next, MessageOK(s.Pos())), nil
|
return Succeed(anyConsumed, val6, next, MessageOK(s.Pos())), nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
_ "embed"
|
_ "embed"
|
||||||
"errors"
|
"errors"
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"go/format"
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
"text/template"
|
"text/template"
|
||||||
@ -49,28 +51,28 @@ func run() error {
|
|||||||
bindTmpl = template.Must(template.New("bind").Parse(bind))
|
bindTmpl = template.Must(template.New("bind").Parse(bind))
|
||||||
seqTmpl = template.Must(template.New("seq").Parse(seq))
|
seqTmpl = template.Must(template.New("seq").Parse(seq))
|
||||||
|
|
||||||
fbind, err := os.OpenFile(*bindPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0777)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
defer fbind.Close()
|
|
||||||
|
|
||||||
data := File{
|
data := File{
|
||||||
Package: *pkg,
|
Package: *pkg,
|
||||||
Counter: Counter(*maxBindLen),
|
Counter: Counter(*maxBindLen),
|
||||||
}
|
}
|
||||||
err = bindTmpl.Execute(fbind, data)
|
err := genCodeFile(*bindPath, bindTmpl, data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
return genCodeFile(*seqPath, seqTmpl, data)
|
||||||
|
}
|
||||||
|
|
||||||
fseq, err := os.OpenFile(*seqPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0777)
|
func genCodeFile(path string, tmpl *template.Template, data any) error {
|
||||||
|
var buf bytes.Buffer
|
||||||
|
err := tmpl.Execute(&buf, data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
defer fseq.Close()
|
src, err := format.Source(buf.Bytes())
|
||||||
|
if err != nil {
|
||||||
return seqTmpl.Execute(fseq, data)
|
return err
|
||||||
|
}
|
||||||
|
return os.WriteFile(path, src, 0777)
|
||||||
}
|
}
|
||||||
|
|
||||||
type File struct {
|
type File struct {
|
||||||
|
4
seq.go
4
seq.go
@ -39,6 +39,7 @@ func Seq2[In, Out, T, T2 any](
|
|||||||
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func Seq3[In, Out, T, T2, T3 any](
|
func Seq3[In, Out, T, T2, T3 any](
|
||||||
p Parser[In, T],
|
p Parser[In, T],
|
||||||
p2 Parser[In, T2],
|
p2 Parser[In, T2],
|
||||||
@ -88,6 +89,7 @@ func Seq3[In, Out, T, T2, T3 any](
|
|||||||
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func Seq4[In, Out, T, T2, T3, T4 any](
|
func Seq4[In, Out, T, T2, T3, T4 any](
|
||||||
p Parser[In, T],
|
p Parser[In, T],
|
||||||
p2 Parser[In, T2],
|
p2 Parser[In, T2],
|
||||||
@ -149,6 +151,7 @@ func Seq4[In, Out, T, T2, T3, T4 any](
|
|||||||
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func Seq5[In, Out, T, T2, T3, T4, T5 any](
|
func Seq5[In, Out, T, T2, T3, T4, T5 any](
|
||||||
p Parser[In, T],
|
p Parser[In, T],
|
||||||
p2 Parser[In, T2],
|
p2 Parser[In, T2],
|
||||||
@ -222,4 +225,3 @@ func Seq5[In, Out, T, T2, T3, T4, T5 any](
|
|||||||
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
return Succeed(anyConsumed, final, next, MessageOK(s.Pos())), nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user