NAME¶
oracle - a tool for answering questions about Go source code
SYNOPSIS¶
oracle [
flag ... ] mode
args ...
DESCRIPTION¶
The -format flag controls the output format:
plain an editor-friendly format in which every line of output
is of the form "pos: text", where pos is "-" if unknown.
json structured data in JSON syntax.
xml structured data in XML syntax.
The -pos flag is required in all modes except 'callgraph'.
The mode argument determines the query to perform:
callees show possible targets of selected function call
callers show possible callers of selected function
callgraph show complete callgraph of program
callstack show path from callgraph root to selected function
describe describe selected syntax: definition, methods, etc
freevars show free variables of selection
implements show 'implements' relation for selected package
peers show send/receive corresponding to selected channel op
referrers show all refs to entity denoted by selected identifier
The user manual is available here:
http://golang.org/s/oracle-user-manual
OPTIONS¶
- -cpuprofile
- write cpu profile to file
- -format
- Output format. One of {plain,json,xml}.
- -pos
- Filename and byte offset or extent of a syntax element about which to
query, e.g. foo.go:#123,#456, bar.go:#123.
- -ptalog
- Location of the points-to analysis log file, or empty to disable
logging.
- -reflect
- Analyze reflection soundly (slow).
EXAMPLES¶
Describe the syntax at offset 530 in this file (an import spec):
oracle -pos=src/code.google.com/p/go.tools/cmd/oracle/main.go:#530 describe
code.google.com/p/go.tools/cmd/oracle
Print the callgraph of the trivial web-server in JSON format:
oracle -format=json src/pkg/net/http/triv.go callgraph
AUTHOR¶
This manual page was written by Michael Stapelberg
<stapelberg@debian.org>, for the Debian project (and may be used by
others).