capability.go
1 package model 2 3 import "github.com/symflower/eval-dev-quality/evaluate/metrics" 4 5 // CapabilityWriteTests defines the capability of a model to generate tests. 6 type CapabilityWriteTests interface { 7 // WriteTests generates test files for the given implementation file in a repository. 8 WriteTests(ctx Context) (assessments metrics.Assessments, err error) 9 } 10 11 // CapabilityRepairCode defines the capability of a model to repair code. 12 type CapabilityRepairCode interface { 13 // RepairCode queries the model to repair a source code with compilation error. 14 RepairCode(ctx Context) (assessments metrics.Assessments, err error) 15 } 16 17 // CapabilityTranspile defines the capability of a model to transpile code. 18 type CapabilityTranspile interface { 19 // Transpile queries the model to transpile source code to another language. 20 Transpile(ctx Context) (assessments metrics.Assessments, err error) 21 }