func Format()

in format.go [48:75]


func Format(dst io.Writer, ast *ast.AST, src common.Source, opts ...FormatOption) error {
	unparserOpts := &unparserOption{
		wrapOnColumn:         defaultWrapOnColumn,
		wrapAfterColumnLimit: defaultWrapAfterColumnLimit,
		operatorsToWrapOn:    defaultOperatorsToWrapOn,
	}

	var err error
	for _, opt := range opts {
		unparserOpts, err = opt(unparserOpts)
		if err != nil {
			return err
		}
	}
	expr := ast.Expr()
	un := &formatter{
		dst:      lenWriter{w: dst},
		src:      src,
		info:     ast.SourceInfo(),
		options:  unparserOpts,
		comments: make(map[location]int64),
	}
	err = un.visit(expr, false)
	if err != nil {
		return err
	}
	return nil
}