files

package
v1.2.15 Latest Latest
Warning

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

Go to latest
Published: Jul 13, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package files provides filesystem operations for reading and writing generated projects.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FormatGoFile added in v0.38.9

func FormatGoFile(path string) error

FormatGoFile formats a Go file using goimports and go fmt

Types

type EnhancedFileManager

type EnhancedFileManager interface {
	Manager
	WriteFileWithPermissions(path, content string, perm os.FileMode) error
	EnsureDirWithPermissions(path string, perm os.FileMode) error
	GetPermissions() Permissions
	SetPermissions(permissions Permissions)
}

EnhancedFileManager extends FileManager with additional methods

type FileOperationError

type FileOperationError struct {
	Operation string
	Path      string
	Err       error
	Output    string // Optional command output
}

FileOperationError represents errors in file operations with context

func (*FileOperationError) Error

func (e *FileOperationError) Error() string

Error performs the error operation.

func (*FileOperationError) Unwrap

func (e *FileOperationError) Unwrap() error

Unwrap performs the unwrap operation.

type Manager

type Manager interface {
	Reader
	Writer
	Validator
	ProjectLocator
}

Manager combines all file-related interfaces

type Permissions

type Permissions struct {
	FilePrivate   os.FileMode
	FilePublic    os.FileMode
	DirDefault    os.FileMode
	DirExecutable os.FileMode
}

Permissions defines file permission settings

func DefaultPermissions

func DefaultPermissions() Permissions

DefaultPermissions returns standard permission settings

type ProjectLocator

type ProjectLocator interface {
	FindGoModRoot() (string, error)
}

ProjectLocator handles project-related file operations

type Reader

type Reader interface {
	ReadFile(path string) (string, error)
	FileExists(path string) bool
}

Reader handles file reading operations

type UnifiedManager

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

UnifiedManager provides centralized file operations with consistent error handling

func NewUnifiedFileManager

func NewUnifiedFileManager() *UnifiedManager

NewUnifiedFileManager creates a new unified file manager

func (*UnifiedManager) EnsureDir

func (fm *UnifiedManager) EnsureDir(path string) error

EnsureDir creates a directory if it doesn't exist

func (*UnifiedManager) EnsureDirWithPermissions

func (fm *UnifiedManager) EnsureDirWithPermissions(path string, perm os.FileMode) error

EnsureDirWithPermissions creates a directory with specific permissions

func (*UnifiedManager) FileExists

func (fm *UnifiedManager) FileExists(path string) bool

FileExists checks if a file exists (with caching)

func (*UnifiedManager) FindGoModRoot

func (fm *UnifiedManager) FindGoModRoot() (string, error)

FindGoModRoot finds the root directory containing go.mod (with caching)

func (*UnifiedManager) GetPermissions

func (fm *UnifiedManager) GetPermissions() Permissions

GetPermissions returns the current file permissions

func (*UnifiedManager) ReadFile

func (fm *UnifiedManager) ReadFile(path string) (string, error)

ReadFile reads content from a file

func (*UnifiedManager) SetPermissions

func (fm *UnifiedManager) SetPermissions(permissions Permissions)

SetPermissions updates file permissions

func (*UnifiedManager) ValidateFileExists

func (fm *UnifiedManager) ValidateFileExists(path string) error

ValidateFileExists returns an error if file doesn't exist

func (*UnifiedManager) ValidateFileNotExists

func (fm *UnifiedManager) ValidateFileNotExists(path string) error

ValidateFileNotExists returns an error if file already exists

func (*UnifiedManager) WriteFile

func (fm *UnifiedManager) WriteFile(path, content string) error

WriteFile writes content to a file, creating directories as needed

func (*UnifiedManager) WriteFileWithPermissions

func (fm *UnifiedManager) WriteFileWithPermissions(path, content string, perm os.FileMode) error

WriteFileWithPermissions writes content to a file with specific permissions

type Validator

type Validator interface {
	ValidateFileNotExists(path string) error
	ValidateFileExists(path string) error
}

Validator handles file validation operations

type Writer

type Writer interface {
	WriteFile(path, content string) error
	EnsureDir(path string) error
}

Writer handles file writing operations

Jump to

Keyboard shortcuts

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