Documentation
¶
Overview ¶
Package code provides code-aware features: context extraction, lenses, actions, and explainer. See ../REFACTOR_PLAN.md.
Index ¶
- func ApplyFix(action CodeAction, content string) (string, error)
- func DescribeControlFlow(funcBody string) string
- func DetectSideEffects(funcBody string) []string
- func FormatContext(ctx *CodeContext) string
- func FormatExplanation(exp *CodeExplanation) string
- func FormatLenses(file string, lenses []CodeLens) string
- func FormatSuggestions(actions []CodeAction, maxDisplay int) string
- func InferPurpose(name string, params, returns []string) string
- type ActionDetector
- type ActionRule
- type CodeAction
- type CodeContext
- type CodeExplainer
- type CodeExplanation
- type CodeLens
- func FilterByCategory(lenses []CodeLens, category string) []CodeLens
- func GenerateAgeLens(file, content string) []CodeLens
- func GenerateComplexityLens(file, content string) []CodeLens
- func GenerateCoverageLens(file, content string) []CodeLens
- func GenerateReferenceLens(file, content string) []CodeLens
- func GenerateTestLens(file, content string) []CodeLens
- type CodeLensProvider
- type CodeSnippet
- type ContextExtractor
- func (ce *ContextExtractor) ExtractForTask(task string) (*CodeContext, error)
- func (ce *ContextExtractor) ExtractFunction(file, funcName string) (*CodeSnippet, error)
- func (ce *ContextExtractor) ExtractImports(file string) (*CodeSnippet, error)
- func (ce *ContextExtractor) ExtractSurrounding(file string, line, contextLines int) (*CodeSnippet, error)
- func (ce *ContextExtractor) ExtractType(file, typeName string) (*CodeSnippet, error)
- func (ce *ContextExtractor) FindRelevantSymbols(query string, limit int) []CodeSnippet
- func (ce *ContextExtractor) RankSnippets(snippets []CodeSnippet, query string) []CodeSnippet
- type ExplanationSection
- type LensGenerator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DescribeControlFlow ¶
func DetectSideEffects ¶
func FormatContext ¶
func FormatContext(ctx *CodeContext) string
func FormatExplanation ¶
func FormatExplanation(exp *CodeExplanation) string
func FormatLenses ¶
func FormatSuggestions ¶
func FormatSuggestions(actions []CodeAction, maxDisplay int) string
func InferPurpose ¶
Types ¶
type ActionDetector ¶
type ActionDetector struct {
Rules []ActionRule
// contains filtered or unexported fields
}
func NewActionDetector ¶
func NewActionDetector() *ActionDetector
func (*ActionDetector) Detect ¶
func (ad *ActionDetector) Detect(path, content string) []CodeAction
func (*ActionDetector) DetectForDiff ¶
func (ad *ActionDetector) DetectForDiff(diff string) []CodeAction
type ActionRule ¶
type CodeAction ¶
type CodeContext ¶
type CodeContext struct {
Snippets []CodeSnippet
TotalTokens int
Query string
// contains filtered or unexported fields
}
type CodeExplainer ¶
type CodeExplainer struct {
// contains filtered or unexported fields
}
func NewCodeExplainer ¶
func NewCodeExplainer() *CodeExplainer
func (*CodeExplainer) ExplainFile ¶
func (ce *CodeExplainer) ExplainFile(path, content string) (*CodeExplanation, error)
func (*CodeExplainer) ExplainFunction ¶
func (ce *CodeExplainer) ExplainFunction(file, content, funcName string) (*CodeExplanation, error)
func (*CodeExplainer) ExplainType ¶
func (ce *CodeExplainer) ExplainType(file, content, typeName string) (*CodeExplanation, error)
type CodeExplanation ¶
type CodeLens ¶
type CodeLens struct {
File string
Line int
Label string
Category string
Command string
Tooltip string
}
func FilterByCategory ¶
func GenerateAgeLens ¶
func GenerateComplexityLens ¶
func GenerateCoverageLens ¶
func GenerateReferenceLens ¶
func GenerateTestLens ¶
type CodeLensProvider ¶
type CodeLensProvider struct {
Providers map[string]LensGenerator
// contains filtered or unexported fields
}
func NewCodeLensProvider ¶
func NewCodeLensProvider() *CodeLensProvider
func (*CodeLensProvider) Generate ¶
func (p *CodeLensProvider) Generate(file, content string) []CodeLens
func (*CodeLensProvider) Register ¶
func (p *CodeLensProvider) Register(name string, generator LensGenerator)
type CodeSnippet ¶
type ContextExtractor ¶
type ContextExtractor struct {
ProjectDir string
MaxTokens int
// contains filtered or unexported fields
}
func NewContextExtractor ¶
func NewContextExtractor(projectDir string, maxTokens int) *ContextExtractor
func (*ContextExtractor) ExtractForTask ¶
func (ce *ContextExtractor) ExtractForTask(task string) (*CodeContext, error)
func (*ContextExtractor) ExtractFunction ¶
func (ce *ContextExtractor) ExtractFunction(file, funcName string) (*CodeSnippet, error)
func (*ContextExtractor) ExtractImports ¶
func (ce *ContextExtractor) ExtractImports(file string) (*CodeSnippet, error)
func (*ContextExtractor) ExtractSurrounding ¶
func (ce *ContextExtractor) ExtractSurrounding(file string, line, contextLines int) (*CodeSnippet, error)
func (*ContextExtractor) ExtractType ¶
func (ce *ContextExtractor) ExtractType(file, typeName string) (*CodeSnippet, error)
func (*ContextExtractor) FindRelevantSymbols ¶
func (ce *ContextExtractor) FindRelevantSymbols(query string, limit int) []CodeSnippet
func (*ContextExtractor) RankSnippets ¶
func (ce *ContextExtractor) RankSnippets(snippets []CodeSnippet, query string) []CodeSnippet
type ExplanationSection ¶
type LensGenerator ¶
Click to show internal directories.
Click to hide internal directories.