Lines Matching full:act
155 act, ok := actions[a]
157 act = &action{a: a}
158 actions[a] = act
160 act.usesFacts = true
163 act.deps = make([]*action, len(a.Requires))
167 act.usesFacts = true
169 act.deps[i] = dep
172 return act
201 for _, act := range actions {
202 act.pkg = pkg
222 for analyzer, act := range actions {
224 act.nolint = append(act.nolint, rng)
264 func (act *action) String() string {
265 return fmt.Sprintf("%s@%s", act.a, act.pkg)
271 for _, act := range actions {
272 go func(act *action) {
274 act.exec()
275 }(act)
280 func (act *action) exec() { act.once.Do(act.execOnce) }
282 func (act *action) execOnce() {
284 execAll(act.deps)
288 for _, dep := range act.deps {
295 act.err = fmt.Errorf("failed prerequisites: %s", strings.Join(failed, ", "))
302 for _, dep := range act.deps {
310 pos := act.pkg.fset.Position(d.Pos)
311 for _, rng := range act.nolint {
323 act.diagnostics = append(act.diagnostics, d)
328 for _, f := range act.a.FactTypes {
332 Analyzer: act.a,
333 Fset: act.pkg.fset,
334 Files: act.pkg.syntax,
335 Pkg: act.pkg.types,
336 TypesInfo: act.pkg.typesInfo,
339 ImportPackageFact: act.pkg.facts.ImportPackageFact,
340 ExportPackageFact: act.pkg.facts.ExportPackageFact,
341 ImportObjectFact: act.pkg.facts.ImportObjectFact,
342 ExportObjectFact: act.pkg.facts.ExportObjectFact,
343 …AllPackageFacts: func() []analysis.PackageFact { return act.pkg.facts.AllPackageFacts(factFilter…
344 …AllObjectFacts: func() []analysis.ObjectFact { return act.pkg.facts.AllObjectFacts(factFilter) …
347 act.pass = pass
350 if act.pkg.illTyped && !pass.Analyzer.RunDespiteErrors {
351 err = fmt.Errorf("analysis skipped due to type-checking error: %v", act.pkg.typeCheckError)
353 act.result, err = pass.Analyzer.Run(pass)
355 if got, want := reflect.TypeOf(act.result), pass.Analyzer.ResultType; got != want {
362 act.err = err
445 for _, act := range actions {
446 if act.err != nil {
448 errs = append(errs, fmt.Errorf("analyzer %q failed: %v", act.a.Name, act.err))
451 if len(act.diagnostics) == 0 {
461 if actionConfig, ok := configs[act.a.Name]; ok {
474 for _, diag := range act.diagnostics {
475 diagnostics = append(diagnostics, entry{Diagnostic: diag, Analyzer: act.a})
480 for _, d := range act.diagnostics {
508 diagnostics = append(diagnostics, entry{Diagnostic: d, Analyzer: act.a})