mirror of
https://github.com/golang/go
synced 2025-05-19 05:26:41 +00:00
html/template: use maps.Copy in escaper.escapeListConditionally
To make it a little simpler.
Change-Id: I0d7f015e8f245fbdd8c5cf5c10e8d2bd44b91021
GitHub-Last-Rev: 2eae47fe8b
GitHub-Pull-Request: golang/go#69396
Reviewed-on: https://go-review.googlesource.com/c/go/+/612397
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Tim King <taking@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
This commit is contained in:
@ -10,6 +10,7 @@ import (
|
||||
"html"
|
||||
"internal/godebug"
|
||||
"io"
|
||||
"maps"
|
||||
"regexp"
|
||||
"text/template"
|
||||
"text/template/parse"
|
||||
@ -588,22 +589,14 @@ func (e *escaper) escapeListConditionally(c context, n *parse.ListNode, filter f
|
||||
e1 := makeEscaper(e.ns)
|
||||
e1.rangeContext = e.rangeContext
|
||||
// Make type inferences available to f.
|
||||
for k, v := range e.output {
|
||||
e1.output[k] = v
|
||||
}
|
||||
maps.Copy(e1.output, e.output)
|
||||
c = e1.escapeList(c, n)
|
||||
ok := filter != nil && filter(&e1, c)
|
||||
if ok {
|
||||
// Copy inferences and edits from e1 back into e.
|
||||
for k, v := range e1.output {
|
||||
e.output[k] = v
|
||||
}
|
||||
for k, v := range e1.derived {
|
||||
e.derived[k] = v
|
||||
}
|
||||
for k, v := range e1.called {
|
||||
e.called[k] = v
|
||||
}
|
||||
maps.Copy(e.output, e1.output)
|
||||
maps.Copy(e.derived, e1.derived)
|
||||
maps.Copy(e.called, e1.called)
|
||||
for k, v := range e1.actionNodeEdits {
|
||||
e.editActionNode(k, v)
|
||||
}
|
||||
|
Reference in New Issue
Block a user