This also adds a missing 'return' when a malformed URL is passed to it.
R=rsc
APPROVED=rsc
DELTA=30 (13 added, 2 deleted, 15 changed)
OCL=28598
CL=28710
if both types are named, they must be
the same type (arising from the same
declaration).
R=r,gri
DELTA=44 (21 added, 4 deleted, 19 changed)
OCL=28436
CL=28577
- template-driven ast printing now can successfully
reproduce entire Go programs
next steps:
- fine-tuning of output
- print interspersed comments
- cleanup and testing against all Go programs
- replace astprinter
R=r
OCL=28181
CL=28181
- work-around for incorrect import path
- added tmpl root in order to run against a goroot w/o templates
- clarifications
Daily snapshot of syntax-driven formatter. Some progress.
Updated gccgo Makefile.
TBR=r
OCL=28004
CL=28004
if the name contains a metacharacter, use regexp matching;
otherwise require strict equality.
now
godoc flag '.*Var'
can give you all the FooVar functions.
R=gri
DELTA=19 (19 added, 0 deleted, 0 changed)
OCL=27711
CL=27713
.or works in .repeated so remove the comment.
the bug was in the template: .section executes iff the field is non-empty.
R=gri
DELTA=13 (6 added, 7 deleted, 0 changed)
OCL=27710
CL=27712
- delete utility files which contained functionality that is now elsewhere
(or saved the files away for now)
- cleanup Makefile (remove unnecessary deps)
- minor adjustments to godoc, fixed a couple of bugs
- make pretty.go self-contained
TBR=r
DELTA=625 (81 added, 510 deleted, 34 changed)
OCL=27700
CL=27702
import (
"vector" -> "container/vector"
"ast" -> "go/ast"
"sha1" -> "hash/sha1"
etc.
)
and update Makefiles. Because I did the conversion
semi-automatically, I sorted all the import blocks
as a post-processing. Some files have therefore
changed that didn't strictly need to.
Rename local packages to lower case.
The upper/lower distinction doesn't work on OS X
and complicates the "single-package directories
with the same package name as directory name"
heuristic used by gobuild and godoc to create
the correlation between source and binary locations.
Now that we have a plan to avoid globally unique
names, the upper/lower is unnecessary.
The renamings will cause trouble for a few users,
but so will the change in import paths.
This way, the two maintenance fixes are rolled into
one inconvenience.
R=r
OCL=27573
CL=27575
as a reminder, the old conversion
was that you could write
var arr [10]byte;
var slice []byte;
slice = arr;
but now you have to write
slice = &arr;
the change eliminates an implicit &, so that
the only implicit &s left are in the . operator
and in string(arr).
also, removed utf8.EncodeRuneToString
in favor of string(rune).
R=r
DELTA=83 (1 added, 23 deleted, 59 changed)
OCL=27531
CL=27534
add comment describing new web server tree.
make room for command line interface.
use new path package to get rid of doubled slashes.
use new Chdir function to avoid goroot + everything.
implement new /pkg/ tree instead of using regexps.
R=gri
DELTA=267 (103 added, 72 deleted, 92 changed)
OCL=27150
CL=27367
- godoc now supports the following url prefixes:
/doc/ for package documentation
/file/ for files (directories, html, and .go files)
/spec for the spec
/mem for the memory model
- formatting of comments has been fixed
- tons of minor cleanups (still more to do)
Still missing:
- pretty printing of source is not as pretty as it used to be
(still a relict from the massive AST cleanup which has't quite made it's way everywhere)
- documentation entries should be sorted
- comments in code is not printed or not properly printed
TBR=r
DELTA=416 (182 added, 100 deleted, 134 changed)
OCL=27078
CL=27078
- use /src and /doc prefix in URL to distinguish output type (per rsc)
- fixed a bug in an internal string function
- ignore files ending in _test.go (consider them test files)
R=rsc
OCL=27054
CL=27054
first round of cleanups:
- removed extra .html templates (reduced to one)
- removed dependencies on various local files
- minor fixes throughout
Basic docserver is now operational: Automatically finds all
(multi-file) packages under a root and serves either file
or package documentation.
R=r
OCL=27049
CL=27049
- renamed gds -> godoc
- functionality to find and serve packages
(to get a list of packages provide dir path + "?p")
Next steps: cleanups, better formatting, fine-tuning of output
R=r
OCL=27037
CL=27039
- adjustments to match new ast/parser interface
- removed printer.go; functionality now in astprinter.go and docprinter.go
(more cleanups pending)
- enabled new doc printing in gds
(lots of fine tuning missing, but pieces falling into place; e.g. methods
associated with types. Consts, Vars, to come. Collection of all files
belonging to a package to come)
R=r
OCL=26970
CL=26972
- separating printing of AST and documentation
- astprinter: will subsume ast printing functionality of printer
- docprinter: will subsume doc printing functionality of printer
also: more logic to collect all the documentation pertaining
to all files of a package
- parser: some cleanups, stricter syntax checks
- gds: hooks to test new doc printer (disabled)
R=r
OCL=26915
CL=26915
- commented public interface
- much better and very precise error messages
- much better tracing output
- many more checks (still permits more than just syntactically legal
programs, but much more is checked that can be checked w/o semantic information)
- updated with respect to updated AST
- general cleanup throughout
Parser almost ready for move into lib/go.
R=r
OCL=26853
CL=26855
- by moving Position into token, scanner dependencies
are removed from several files
- clearer field names in token.Position, now possible to
have a Pos() accessor w/o naming conflicts
- added Pos() accessor
- use anonymous token.Position field in AST nodes
R=r
DELTA=244 (28 added, 55 deleted, 161 changed)
OCL=26786
CL=26793