diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-03-16 13:37:57 +0300 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-03-16 19:37:36 +0300 |
commit | 03b93bb9884ea479c855c2699e8c7b039dce6224 (patch) | |
tree | d6453cf01896ab65596b34e02ebb561c26e672b7 /hugolib/page.go | |
parent | 94fb4dc3dddf6803265316a7b8cfe81c29a83e91 (diff) |
Add .RegularPagesRecursive
Fixes #6411
Diffstat (limited to 'hugolib/page.go')
-rw-r--r-- | hugolib/page.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/hugolib/page.go b/hugolib/page.go index f0f695227..16c320ecd 100644 --- a/hugolib/page.go +++ b/hugolib/page.go @@ -171,6 +171,14 @@ func (p *pageState) getPages() page.Pages { return b.getPages() } +func (p *pageState) getPagesRecursive() page.Pages { + b := p.bucket + if b == nil { + return nil + } + return b.getPagesRecursive() +} + func (p *pageState) getPagesAndSections() page.Pages { b := p.bucket if b == nil { @@ -179,6 +187,24 @@ func (p *pageState) getPagesAndSections() page.Pages { return b.getPagesAndSections() } +func (p *pageState) RegularPagesRecursive() page.Pages { + p.regularPagesRecursiveInit.Do(func() { + var pages page.Pages + switch p.Kind() { + case page.KindSection: + pages = p.getPagesRecursive() + default: + pages = p.RegularPages() + } + p.regularPagesRecursive = pages + }) + return p.regularPagesRecursive +} + +func (p *pageState) PagesRecursive() page.Pages { + return nil +} + func (p *pageState) RegularPages() page.Pages { p.regularPagesInit.Do(func() { var pages page.Pages |