simplify file object

This commit is contained in:
2026-09-01 00:19:08 +01:00
parent d13ee5cf13
commit 19f540e808
2 changed files with 13 additions and 25 deletions
-21
View File
@@ -1,7 +1,6 @@
package sqan
import (
"errors"
"time"
)
@@ -12,26 +11,6 @@ type File struct {
RelativePath string `json:"relativePath,omitempty"`
Filename string `json:"filename,omitempty"`
Extension string `json:"extension,omitempty"`
Hash string `json:"hash,omitempty"`
Size int64 `json:"size,omitempty"`
Modified time.Time `json:"modified,omitempty"`
}
func (f *File) Process() error {
return errors.New("unimplemented")
}
func NewFile(rootDir, absPath string) *File {
relPath, relDir, filename, extension := ParsePath(rootDir, absPath)
f := &File{
RootDir: rootDir,
AbsolutePath: absPath,
RelativeDir: relDir,
RelativePath: relPath,
Filename: filename,
Extension: extension,
}
return f
}
+13 -4
View File
@@ -75,8 +75,8 @@ func (s *Scanner) scan(rootDir, dir string, yield func(*File) bool) {
continue
}
f := NewFile(rootDir, absPath)
if len(s.extensions) > 0 && !slices.Contains(s.extensions, f.Extension) {
relPath, relDir, filename, extension := ParsePath(rootDir, absPath)
if len(s.extensions) > 0 && !slices.Contains(s.extensions, extension) {
continue
}
@@ -86,8 +86,17 @@ func (s *Scanner) scan(rootDir, dir string, yield func(*File) bool) {
continue
}
f.Size = info.Size()
f.Modified = info.ModTime()
f := &File{
RootDir: rootDir,
AbsolutePath: absPath,
RelativeDir: relDir,
RelativePath: relPath,
Filename: filename,
Extension: extension,
Size: info.Size(),
Modified: info.ModTime(),
}
if !yield(f) {
return
}