Change the order of Apply to be more Unixy
authorNoah Campbell <noahcampbell@gmail.com>
Tue, 1 Oct 2013 21:42:08 +0000 (14:42 -0700)
committerNoah Campbell <noahcampbell@gmail.com>
Tue, 8 Oct 2013 16:37:50 +0000 (18:37 +0200)
Typically the destination is on the left and the src is on the right.

hugolib/site.go
transform/absurl.go
transform/chain.go
transform/nav.go
transform/nav_test.go
transform/post.go
transform/posttrans_test.go

index 15e78d22342fde9fd5f5eecce5952e74f3f09fa6..5119081b8ace6ae67f368af1789a126da6e77b56 100644 (file)
@@ -618,10 +618,13 @@ func (s *Site) WritePublic(path string, content io.Reader) (err error) {
        }
 
        if s.Transformer == nil {
-               s.Transformer = &transform.AbsURL{BaseURL: s.Config.BaseUrl}
+               s.Transformer = transform.NewChain(
+                       &transform.AbsURL{BaseURL: s.Config.BaseUrl},
+                       &transform.NavActive{Section: "tbd"},
+               )
        }
        final := new(bytes.Buffer)
-       s.Transformer.Apply(content, final)
+       s.Transformer.Apply(final, content)
        return s.Target.Publish(path, final)
 }
 
index 6e7eb125b2c445e86aa3a84b8edc5c12e877f066..087aba5b12de5408a8754034cb3de45e0365dcf1 100644 (file)
@@ -10,7 +10,7 @@ type AbsURL struct {
        BaseURL string
 }
 
-func (t *AbsURL) Apply(r io.Reader, w io.Writer) (err error) {
+func (t *AbsURL) Apply(w io.Writer, r io.Reader) (err error) {
        var tr *htmltran.Transformer
 
        if tr, err = htmltran.NewFromReader(r); err != nil {
index e408b01d20ea47f4f33eec43a13c591acd388a37..b9a865fe976ab1b6a181c853bb9a897adf04cb3b 100644 (file)
@@ -13,11 +13,11 @@ func NewChain(trs ...Transformer) Transformer {
        return &chain{transformers: trs}
 }
 
-func (c *chain) Apply(r io.Reader, w io.Writer) (err error) {
+func (c *chain) Apply(w io.Writer, r io.Reader) (err error) {
        in := r
        for _, tr := range c.transformers {
                out := new(bytes.Buffer)
-               err = tr.Apply(in, out)
+               err = tr.Apply(out, in)
                if err != nil {
                        return
                }
index 2111ae89a0bd466696a6bf74ae453697ac92664a..1c9ab1fb64d514508913c695e7556f6421e5442e 100644 (file)
@@ -11,7 +11,7 @@ type NavActive struct {
        AttrName string
 }
 
-func (n *NavActive) Apply(r io.Reader, w io.Writer) (err error) {
+func (n *NavActive) Apply(w io.Writer, r io.Reader) (err error) {
        var tr *htmltran.Transformer
 
        if n.Section == "" {
index 78e00f7df01eb287c4141fa77bf569816182f750..4d578b87a47cd269bdcd47b1fb230ba0fa4f57c6 100644 (file)
@@ -37,7 +37,7 @@ func TestDegenerateNoSectionSet(t *testing.T) {
                out = new(bytes.Buffer)
        )
 
-       if err := tr.Apply(strings.NewReader(HTML_WITH_NAV), out); err != nil {
+       if err := tr.Apply(out, strings.NewReader(HTML_WITH_NAV)); err != nil {
                t.Errorf("Unexpected error in NavActive.Apply: %s", err)
        }
 
@@ -49,7 +49,7 @@ func TestDegenerateNoSectionSet(t *testing.T) {
 func TestSetNav(t *testing.T) {
        tr := &NavActive{Section: "section_2"}
        out := new(bytes.Buffer)
-       if err := tr.Apply(strings.NewReader(HTML_WITH_NAV), out); err != nil {
+       if err := tr.Apply(out, strings.NewReader(HTML_WITH_NAV)); err != nil {
                t.Errorf("Unexpected error in Apply() for NavActive: %s", err)
        }
 
index a23b48d2e316c863294da9e1d94b658674b1b2e7..c9a292b56346dd3f1551c88433ccdeef864fe6a5 100644 (file)
@@ -5,5 +5,5 @@ import (
 )
 
 type Transformer interface {
-       Apply(io.Reader, io.Writer) error
+       Apply(io.Writer, io.Reader) error
 }
index 3cac6e76b282388e170c4efed108398b97bd86ee..8ec004e8749a2fbb33a6f74448ad6a4772dd3a85 100644 (file)
@@ -38,7 +38,7 @@ var abs_url_tests = []test {
 func apply(t *testing.T, tr Transformer, tests []test) {
        for _, test := range tests {
                out := new(bytes.Buffer)
-               err := tr.Apply(strings.NewReader(test.content), out)
+               err := tr.Apply(out, strings.NewReader(test.content))
                if err != nil {
                        t.Errorf("Unexpected error: %s", err)
                }