scanner

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package scanner discovers source files in a workspace directory, respecting gitignore rules and custom include/exclude patterns.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ScanWorkspace

func ScanWorkspace(rootPath string, opts ...Option) (*models.ScannedWorkspace, error)

ScanWorkspace is a convenience entrypoint for a one-off scan.

Types

type Option

type Option func(*ScanOptions)

Option mutates ScanOptions for a scanner.

func WithExcludePatterns

func WithExcludePatterns(patterns ...string) Option

WithExcludePatterns configures user exclude patterns.

func WithIncludePatterns

func WithIncludePatterns(patterns ...string) Option

WithIncludePatterns configures user include patterns that re-include paths.

func WithOutputPath

func WithOutputPath(path string) Option

WithOutputPath excludes the generated output directory from scan results.

type ScanOptions

type ScanOptions struct {
	OutputPath      string
	IncludePatterns []string
	ExcludePatterns []string
}

ScanOptions configures a workspace scan.

type Scanner

type Scanner struct {
	// contains filtered or unexported fields
}

Scanner discovers supported source files inside a repository workspace.

func NewScanner

func NewScanner(opts ...Option) *Scanner

NewScanner constructs a scanner using functional options.

func (*Scanner) ScanWorkspace

func (s *Scanner) ScanWorkspace(rootPath string) (*models.ScannedWorkspace, error)

ScanWorkspace scans a repository root and returns supported source files grouped by language.

Jump to

Keyboard shortcuts

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