30 lines
723 B
Go
30 lines
723 B
Go
package processor
|
|
|
|
import (
|
|
_ "embed"
|
|
"fmt"
|
|
"os"
|
|
|
|
logger "git.site.quack-lab.dev/dave/cylogger"
|
|
)
|
|
|
|
//go:embed meta.lua
|
|
var metaFileContent string
|
|
|
|
var metaLogger = logger.Default.WithPrefix("meta")
|
|
|
|
// GenerateMetaFile generates meta.lua with function signatures for LuaLS autocomplete
|
|
func GenerateMetaFile(outputPath string) error {
|
|
metaLogger.Info("Generating meta.lua file for LuaLS autocomplete")
|
|
|
|
// Write the embedded meta file
|
|
err := os.WriteFile(outputPath, []byte(metaFileContent), 0644)
|
|
if err != nil {
|
|
metaLogger.Error("Failed to write meta.lua: %v", err)
|
|
return fmt.Errorf("failed to write meta.lua: %w", err)
|
|
}
|
|
|
|
metaLogger.Info("Successfully generated meta.lua at %q", outputPath)
|
|
return nil
|
|
}
|