Documentation
¶
Overview ¶
Package scanner scans source code for environment variable references.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeduplicateByName ¶
func DeduplicateByName(refs []EnvReference) []string
DeduplicateByName returns unique var names while keeping all references.
Types ¶
type DockerScanner ¶
type DockerScanner struct{}
DockerScanner scans Dockerfiles and docker-compose files for env var usage.
func (*DockerScanner) Extensions ¶
func (d *DockerScanner) Extensions() []string
Extensions returns Docker-related file extensions.
func (*DockerScanner) Language ¶
func (d *DockerScanner) Language() string
Language returns the language name.
func (*DockerScanner) ScanLine ¶
func (d *DockerScanner) ScanLine(line string) []string
ScanLine scans a line for Docker env var references.
type EnvReference ¶
EnvReference represents an environment variable reference found in source code.
type GoScanner ¶
type GoScanner struct{}
GoScanner scans Go files for env var usage.
func (*GoScanner) Extensions ¶
Extensions returns Go file extensions.
type JavaScriptScanner ¶
type JavaScriptScanner struct{}
JavaScriptScanner scans JavaScript and TypeScript files for env var usage.
func (*JavaScriptScanner) Extensions ¶
func (j *JavaScriptScanner) Extensions() []string
Extensions returns JS/TS file extensions.
func (*JavaScriptScanner) Language ¶
func (j *JavaScriptScanner) Language() string
Language returns the language name.
func (*JavaScriptScanner) ScanLine ¶
func (j *JavaScriptScanner) ScanLine(line string) []string
ScanLine scans a line for JS/TS env var references.
type LanguageScanner ¶
type LanguageScanner interface {
// Extensions returns file extensions this scanner handles (e.g., ".js", ".ts").
Extensions() []string
// ScanLine scans a single line for env var references.
ScanLine(line string) []string
// Language returns the language name.
Language() string
}
LanguageScanner defines the interface for language-specific scanners.
type PythonScanner ¶
type PythonScanner struct{}
PythonScanner scans Python files for env var usage.
func (*PythonScanner) Extensions ¶
func (p *PythonScanner) Extensions() []string
Extensions returns Python file extensions.
func (*PythonScanner) Language ¶
func (p *PythonScanner) Language() string
Language returns the language name.
func (*PythonScanner) ScanLine ¶
func (p *PythonScanner) ScanLine(line string) []string
ScanLine scans a line for Python env var references.
type RustScanner ¶
type RustScanner struct{}
RustScanner scans Rust files for env var usage.
func (*RustScanner) Extensions ¶
func (r *RustScanner) Extensions() []string
Extensions returns Rust file extensions.
func (*RustScanner) Language ¶
func (r *RustScanner) Language() string
Language returns the language name.
func (*RustScanner) ScanLine ¶
func (r *RustScanner) ScanLine(line string) []string
ScanLine scans a line for Rust env var references.
type Scanner ¶
type Scanner struct {
// contains filtered or unexported fields
}
Scanner orchestrates scanning across multiple languages.
func NewWithLanguages ¶
NewWithLanguages creates a scanner filtered to specific languages.