ORACLE(1)

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).