From e061fb89e8c44d564f284d127c7790ac98ce8b4e Mon Sep 17 00:00:00 2001 From: Will Faught Date: Fri, 19 Jul 2024 23:29:01 +0000 Subject: [PATCH] text/template: fix doc spacing Change-Id: I4550ce3135b3cd675010a3701618e9350f282453 GitHub-Last-Rev: d2e52f14968621e9913dd66ef6b26348012c83b3 GitHub-Pull-Request: golang/go#68519 Reviewed-on: https://go-review.googlesource.com/c/go/+/599535 Reviewed-by: Ian Lance Taylor LUCI-TryBot-Result: Go LUCI Auto-Submit: Ian Lance Taylor Reviewed-by: Dmitri Shuralyov Reviewed-by: Rob Pike --- src/text/template/doc.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/text/template/doc.go b/src/text/template/doc.go index b3ffaabb15..12f6fe0d1c 100644 --- a/src/text/template/doc.go +++ b/src/text/template/doc.go @@ -162,37 +162,55 @@ An argument is a simple value, denoted by one of the following. the host machine's ints are 32 or 64 bits. - The keyword nil, representing an untyped Go nil. - The character '.' (period): + . + The result is the value of dot. - A variable name, which is a (possibly empty) alphanumeric string preceded by a dollar sign, such as + $piOver2 + or + $ + The result is the value of the variable. Variables are described below. - The name of a field of the data, which must be a struct, preceded by a period, such as + .Field + The result is the value of the field. Field invocations may be chained: + .Field1.Field2 + Fields can also be evaluated on variables, including chaining: + $x.Field1.Field2 - The name of a key of the data, which must be a map, preceded by a period, such as + .Key + The result is the map element value indexed by the key. Key invocations may be chained and combined with fields to any depth: + .Field1.Key1.Field2.Key2 + Although the key must be an alphanumeric identifier, unlike with field names they do not need to start with an upper case letter. Keys can also be evaluated on variables, including chaining: + $x.key1.key2 - The name of a niladic method of the data, preceded by a period, such as + .Method + The result is the value of invoking the method with dot as the receiver, dot.Method(). Such a method must have one return value (of any type) or two return values, the second of which is an error. @@ -200,16 +218,22 @@ An argument is a simple value, denoted by one of the following. and an error is returned to the caller as the value of Execute. Method invocations may be chained and combined with fields and keys to any depth: + .Field1.Key1.Method1.Field2.Key2.Method2 + Methods can also be evaluated on variables, including chaining: + $x.Method1.Field - The name of a niladic function, such as + fun + The result is the value of invoking the function, fun(). The return types and values behave as in methods. Functions and function names are described below. - A parenthesized instance of one the above, for grouping. The result may be accessed by a field or map key invocation. + print (.F1 arg1) (.F2 arg2) (.StructValuedMethod "arg").Field -- 2.48.1