imports - ActiveState ActiveGo 1.8

Package imports

import ""

Overview ▾

Package imports implements a Go pretty-printer (like package "go/format") that also adds or removes import statements as necessary.


Debug controls verbose logging.

var Debug = false

If set, LocalPrefix instructs Process to sort import paths with the given prefix into another group after 3rd-party packages.

var LocalPrefix string

func Process

func Process(filename string, src []byte, opt *Options) ([]byte, error)

Process formats and adjusts imports for the provided file. If opt is nil the defaults are used.

Note that filename's directory influences which imports can be chosen, so it is important that filename be accurate. To process data “as if” it were in filename, pass the data as a non-nil src.

type Options

Options specifies options for processing files.

type Options struct {
    Fragment  bool // Accept fragment of a source file (no package statement)
    AllErrors bool // Report all errors (not just the first 10 on different lines)

    Comments  bool // Print comments (true if nil *Options provided)
    TabIndent bool // Use tabs for indent (true if nil *Options provided)
    TabWidth  int  // Tab width (8 if nil *Options provided)

    FormatOnly bool // Disable the insertion and deletion of imports