From 3aba2c3779f3d4d9d83f7eccdb726d9ef038851b Mon Sep 17 00:00:00 2001 From: Charles Iliya Krempeaux Date: Wed, 22 Nov 2023 06:52:49 -0800 Subject: [PATCH] initial commits --- parsetowriter.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 parsetowriter.go diff --git a/parsetowriter.go b/parsetowriter.go new file mode 100644 index 0000000..83360a1 --- /dev/null +++ b/parsetowriter.go @@ -0,0 +1,25 @@ +package brace + +import ( + "io" + + "sourcecode.social/reiver/go-utf8" +) + +// ParseToBytes is similar to Parse except it writes the brace-string literal as an io.Writer. +func ParseToWriter(writer io.Writer, runescanner io.RuneScanner) error { + if nil == writer { + return errNilWriter + } + + fn := func(r rune) error { + _, err := utf8.WriteRune(writer, r) + if nil != err { + return err + } + + return nil + } + + return Parse(fn, runescanner) +}