mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-26 22:04:32 +02:00
Reimplement and simplify Hugo's template system
See #13541 for details. Fixes #13545 Fixes #13515 Closes #7964 Closes #13365 Closes #12988 Closes #4891
This commit is contained in:
@@ -17,8 +17,6 @@ import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
radix "github.com/armon/go-radix"
|
||||
)
|
||||
|
||||
var _ MutableTrees = MutableTrees{}
|
||||
@@ -60,11 +58,9 @@ func (ctx *WalkContext[T]) AddPostHook(handler func() error) {
|
||||
ctx.HooksPost = append(ctx.HooksPost, handler)
|
||||
}
|
||||
|
||||
func (ctx *WalkContext[T]) Data() *SimpleTree[any] {
|
||||
func (ctx *WalkContext[T]) Data() *SimpleThreadSafeTree[any] {
|
||||
ctx.dataInit.Do(func() {
|
||||
ctx.data = &SimpleTree[any]{
|
||||
tree: radix.New(),
|
||||
}
|
||||
ctx.data = NewSimpleThreadSafeTree[any]()
|
||||
})
|
||||
return ctx.data
|
||||
}
|
||||
@@ -191,7 +187,7 @@ func (t MutableTrees) CanLock() bool {
|
||||
|
||||
// WalkContext is passed to the Walk callback.
|
||||
type WalkContext[T any] struct {
|
||||
data *SimpleTree[any]
|
||||
data *SimpleThreadSafeTree[any]
|
||||
dataInit sync.Once
|
||||
eventHandlers eventHandlers[T]
|
||||
events []*Event[T]
|
||||
|
Reference in New Issue
Block a user