linter

package
v1.11.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 5, 2018 License: GPL-3.0 Imports: 8 Imported by: 50

Documentation

Index

Constants

View Source
const (
	PresetFormatting  = "format"
	PresetComplexity  = "complexity"
	PresetStyle       = "style"
	PresetBugs        = "bugs"
	PresetUnused      = "unused"
	PresetPerformance = "performance"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Linter           Linter
	EnabledByDefault bool

	NeedsTypeInfo bool
	NeedsSSARepr  bool

	InPresets        []string
	Speed            int // more value means faster execution of linter
	AlternativeNames []string

	OriginalURL string // URL of original (not forked) repo, needed for autogenerated README
}

func NewConfig

func NewConfig(linter Linter) *Config

func (Config) AllNames added in v1.10.2

func (lc Config) AllNames() []string

func (Config) GetSpeed

func (lc Config) GetSpeed() int

func (Config) Name added in v1.10.2

func (lc Config) Name() string

func (Config) WithAlternativeNames added in v1.10.2

func (lc Config) WithAlternativeNames(names ...string) Config

func (Config) WithPresets

func (lc Config) WithPresets(presets ...string) Config

func (Config) WithSSA

func (lc Config) WithSSA() Config

func (Config) WithSpeed

func (lc Config) WithSpeed(speed int) Config

func (Config) WithTypeInfo added in v1.11.1

func (lc Config) WithTypeInfo() Config

func (Config) WithURL

func (lc Config) WithURL(url string) Config

type Context

type Context struct {
	Packages             []*packages.Package
	NotCompilingPackages []*packages.Package

	LoaderConfig *loader.Config  // deprecated, don't use for new linters
	Program      *loader.Program // deprecated, use Packages for new linters

	SSAProgram *ssa.Program

	Cfg      *config.Config
	ASTCache *astcache.Cache
	Log      logutils.Log
}

func (*Context) Settings

func (c *Context) Settings() *config.LintersSettings

type Linter

type Linter interface {
	Run(ctx context.Context, lintCtx *Context) ([]result.Issue, error)
	Name() string
	Desc() string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL