1
0
mirror of https://github.com/golang/go synced 2024-09-25 13:20:13 -06:00
The Go programming language
Go to file
Rob Pike 7f4b4c0c00 text/template: better error messages during execution,
They now show the correct name, the byte offset on the line, and context for the failed evaluation.
Before:
        template: three:7: error calling index: index out of range: 5
After:
        template: top:7:20: executing "three" at <index "hi" $>: error calling index: index out of range: 5
Here top is the template that was parsed to create the set, and the error appears with the action
starting at byte 20 of line 7 of "top", inside the template called "three", evaluating the expression
<index "hi" $>.

Also fix a bug in index: it didn't work on strings. Ouch.

Also fix bug in error for index: was showing type of index not slice.
The real previous error was:
        template: three:7: error calling index: can't index item of type int
The html/template package's errors can be improved by building on this;
I'll do that in a separate pass.

Extends the API for text/template/parse but only by addition of a field and method. The
old API still works.

Fixes #3188.

R=golang-dev, dsymonds
CC=golang-dev
https://golang.org/cl/6576058
2012-10-03 12:02:13 +10:00
api api: fix build; regenerate api.txt with fixed signatures 2012-09-18 22:04:07 -07:00
doc go spec: arguments for append may overlap 2012-09-28 15:55:38 -07:00
include src: Add support for 64-bit version of Plan 9 2012-08-31 13:21:13 -04:00
lib codereview.py: suggest installing Mercurial from official website 2012-10-03 06:58:24 +10:00
misc misc/cgo: prepare for 64-bit ints 2012-09-24 14:58:45 -04:00
src text/template: better error messages during execution, 2012-10-03 12:02:13 +10:00
test test/fixedbugs: forgotten test cases for issues 3907 and 4156. 2012-09-30 10:35:09 +02:00
.hgignore build: update Makefile to track source code dependencies better 2012-03-13 03:31:11 +08:00
.hgtags tag go1.0.3 2012-09-24 13:15:33 -05:00
AUTHORS A+C: add Jeff Wendling (Individual CLA) 2012-10-01 16:49:29 -04:00
CONTRIBUTORS A+C: add Jeff Wendling (Individual CLA) 2012-10-01 16:49:29 -04:00
favicon.ico add a favicon plus a couple of hi-res versions of gordon 2009-10-26 10:13:07 -07:00
LICENSE doc: update licensing text one more time 2012-03-27 15:09:13 +11:00
PATENTS LICENSE: separate, change PATENTS text 2010-12-06 16:31:59 -05:00
README build: update, streamline documentation for new $GOBIN 2010-08-24 20:00:50 -04:00
robots.txt godoc: serve robots.txt raw 2011-02-19 05:46:20 +11:00

This is the source code repository for the Go programming language.  

For documentation about how to install and use Go,
visit http://golang.org/ or load doc/install.html in your web browser.

After installing Go, you can view a nicely formatted
doc/install.html by running godoc --http=:6060
and then visiting http://localhost:6060/doc/install.html.

Unless otherwise noted, the Go source files are distributed
under the BSD-style license found in the LICENSE file.

--

Binary Distribution Notes

If you have just untarred a binary Go distribution, you need to set
the environment variable $GOROOT to the full path of the go
directory (the one containing this README).  You can omit the
variable if you unpack it into /usr/local/go, or if you rebuild
from sources by running all.bash (see doc/install.html).
You should also add the Go binary directory $GOROOT/bin
to your shell's path.

For example, if you extracted the tar file into $HOME/go, you might
put the following in your .profile:

    export GOROOT=$HOME/go
    export PATH=$PATH:$GOROOT/bin

See doc/install.html for more details.