Documentation
¶
Index ¶
- type Analyzer
- type ClojureAnalyzer
- type CppAnalyzer
- type DartAnalyzer
- type DotnetAnalyzer
- type ElixirAnalyzer
- type ErlangAnalyzer
- type GoAnalyzer
- type HaskellAnalyzer
- type JavaAnalyzer
- type JuliaAnalyzer
- type KotlinAnalyzer
- type LuaAnalyzer
- type NodeAnalyzer
- type OCamlAnalyzer
- type PHPAnalyzer
- type PerlAnalyzer
- type PythonAnalyzer
- type RAnalyzer
- type ReachabilityReport
- type RubyAnalyzer
- type RustAnalyzer
- type ScalaAnalyzer
- type SwiftAnalyzer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Analyzer ¶
type Analyzer interface {
// Analyze runs reachability from all entrypoints (main packages / project source).
Analyze(dir string) ([]ReachabilityReport, error)
// AnalyzeFrom runs reachability starting from a specific entrypoint file.
// If entryFile is empty it behaves identically to Analyze.
AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
}
Analyzer is the interface that language implementations satisfy.
type ClojureAnalyzer ¶ added in v0.4.2
type ClojureAnalyzer struct{}
ClojureAnalyzer implements Analyzer using Clojure namespace import analysis.
func (ClojureAnalyzer) Analyze ¶ added in v0.4.2
func (ClojureAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (ClojureAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (ClojureAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type CppAnalyzer ¶ added in v0.4.2
type CppAnalyzer struct{}
CppAnalyzer implements Analyzer using C/C++ #include directive analysis.
func (CppAnalyzer) Analyze ¶ added in v0.4.2
func (CppAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (CppAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (CppAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type DartAnalyzer ¶ added in v0.4.2
type DartAnalyzer struct{}
DartAnalyzer implements Analyzer using Dart package import analysis.
func (DartAnalyzer) Analyze ¶ added in v0.4.2
func (DartAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (DartAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (DartAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type DotnetAnalyzer ¶ added in v0.4.2
type DotnetAnalyzer struct{}
DotnetAnalyzer implements Analyzer using C#/VB namespace import analysis.
func (DotnetAnalyzer) Analyze ¶ added in v0.4.2
func (DotnetAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (DotnetAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (DotnetAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type ElixirAnalyzer ¶ added in v0.4.2
type ElixirAnalyzer struct{}
ElixirAnalyzer implements Analyzer using Elixir use/import/alias analysis.
func (ElixirAnalyzer) Analyze ¶ added in v0.4.2
func (ElixirAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (ElixirAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (ElixirAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type ErlangAnalyzer ¶ added in v0.4.2
type ErlangAnalyzer struct{}
ErlangAnalyzer implements Analyzer using Erlang include/call analysis.
func (ErlangAnalyzer) Analyze ¶ added in v0.4.2
func (ErlangAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (ErlangAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (ErlangAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type GoAnalyzer ¶
type GoAnalyzer struct{}
GoAnalyzer implements Analyzer using Go SSA / callgraph analysis.
func (GoAnalyzer) Analyze ¶
func (GoAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (GoAnalyzer) AnalyzeFrom ¶
func (GoAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type HaskellAnalyzer ¶ added in v0.4.2
type HaskellAnalyzer struct{}
HaskellAnalyzer implements Analyzer using Haskell import-statement analysis.
func (HaskellAnalyzer) Analyze ¶ added in v0.4.2
func (HaskellAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (HaskellAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (HaskellAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type JavaAnalyzer ¶ added in v0.4.2
type JavaAnalyzer struct{}
JavaAnalyzer implements Analyzer using Java import analysis.
func (JavaAnalyzer) Analyze ¶ added in v0.4.2
func (JavaAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (JavaAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (JavaAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type JuliaAnalyzer ¶ added in v0.4.2
type JuliaAnalyzer struct{}
JuliaAnalyzer implements Analyzer using Julia using/import analysis.
func (JuliaAnalyzer) Analyze ¶ added in v0.4.2
func (JuliaAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (JuliaAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (JuliaAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type KotlinAnalyzer ¶ added in v0.4.2
type KotlinAnalyzer struct{}
KotlinAnalyzer implements Analyzer using Kotlin import-statement analysis.
func (KotlinAnalyzer) Analyze ¶ added in v0.4.2
func (KotlinAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (KotlinAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (KotlinAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type LuaAnalyzer ¶ added in v0.4.2
type LuaAnalyzer struct{}
LuaAnalyzer implements Analyzer using Lua require import analysis.
func (LuaAnalyzer) Analyze ¶ added in v0.4.2
func (LuaAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (LuaAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (LuaAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type NodeAnalyzer ¶
type NodeAnalyzer struct{}
NodeAnalyzer implements Analyzer using JS/TS import-graph reachability.
func (NodeAnalyzer) Analyze ¶
func (NodeAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (NodeAnalyzer) AnalyzeFrom ¶
func (NodeAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type OCamlAnalyzer ¶ added in v0.4.2
type OCamlAnalyzer struct{}
OCamlAnalyzer implements Analyzer using OCaml open/module import analysis.
func (OCamlAnalyzer) Analyze ¶ added in v0.4.2
func (OCamlAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (OCamlAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (OCamlAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type PHPAnalyzer ¶ added in v0.3.3
type PHPAnalyzer struct{}
PHPAnalyzer implements Analyzer using PHP use-statement import analysis.
func (PHPAnalyzer) Analyze ¶ added in v0.3.3
func (PHPAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (PHPAnalyzer) AnalyzeFrom ¶ added in v0.3.3
func (PHPAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type PerlAnalyzer ¶ added in v0.4.2
type PerlAnalyzer struct{}
PerlAnalyzer implements Analyzer using Perl use/require import analysis.
func (PerlAnalyzer) Analyze ¶ added in v0.4.2
func (PerlAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (PerlAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (PerlAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type PythonAnalyzer ¶ added in v0.4.2
type PythonAnalyzer struct{}
PythonAnalyzer implements Analyzer using Python import analysis.
func (PythonAnalyzer) Analyze ¶ added in v0.4.2
func (PythonAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (PythonAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (PythonAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type RAnalyzer ¶ added in v0.4.2
type RAnalyzer struct{}
RAnalyzer implements Analyzer using R library/require/namespace analysis.
func (RAnalyzer) Analyze ¶ added in v0.4.2
func (RAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (RAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (RAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type ReachabilityReport ¶
type ReachabilityReport struct {
Package string
ReachableCaps capability.CapabilitySet
Reachable bool
}
ReachabilityReport describes how a dependency's capabilities are reachable from the project's source code.
type RubyAnalyzer ¶ added in v0.4.2
type RubyAnalyzer struct{}
RubyAnalyzer implements Analyzer using Ruby require analysis.
func (RubyAnalyzer) Analyze ¶ added in v0.4.2
func (RubyAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (RubyAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (RubyAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type RustAnalyzer ¶ added in v0.4.2
type RustAnalyzer struct{}
RustAnalyzer implements Analyzer using Rust use/extern-crate analysis.
func (RustAnalyzer) Analyze ¶ added in v0.4.2
func (RustAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (RustAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (RustAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type ScalaAnalyzer ¶ added in v0.4.2
type ScalaAnalyzer struct{}
ScalaAnalyzer implements Analyzer using Scala import-statement analysis.
func (ScalaAnalyzer) Analyze ¶ added in v0.4.2
func (ScalaAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (ScalaAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (ScalaAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)
type SwiftAnalyzer ¶ added in v0.4.2
type SwiftAnalyzer struct{}
SwiftAnalyzer implements Analyzer using Swift import analysis.
func (SwiftAnalyzer) Analyze ¶ added in v0.4.2
func (SwiftAnalyzer) Analyze(dir string) ([]ReachabilityReport, error)
func (SwiftAnalyzer) AnalyzeFrom ¶ added in v0.4.2
func (SwiftAnalyzer) AnalyzeFrom(dir, entryFile string) ([]ReachabilityReport, error)