Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2016-04-07 16:44:53 +0300
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2016-04-07 16:44:53 +0300
commit85bcac530adac2dcc21fdfd6acb902f76c3a5acf (patch)
treedeb82a9963338ebc345022152b494845751e6c18 /source/file.go
parentddd02b2f6ad6535d898531f9677875e061f123ff (diff)
source: Add missing GoDoc in File
See #2014
Diffstat (limited to 'source/file.go')
-rw-r--r--source/file.go30
1 files changed, 23 insertions, 7 deletions
diff --git a/source/file.go b/source/file.go
index 2bd6d2e1c..469c35eee 100644
--- a/source/file.go
+++ b/source/file.go
@@ -21,72 +21,86 @@ import (
"github.com/spf13/hugo/helpers"
)
+// File represents a source content file.
// All paths are relative from the source directory base
type File struct {
- relpath string // Original Full Path eg. content/foo.txt
+ relpath string // Original relative path, e.g. content/foo.txt
logicalName string // foo.txt
Contents io.Reader
section string // The first directory
- dir string // The full directory Path (minus file name)
+ dir string // The relative directory Path (minus file name)
ext string // Just the ext (eg txt)
uniqueID string // MD5 of the filename
}
-// UniqueID: MD5 of the filename
+// UniqueID is the MD5 hash of the filename and is for most practical applications,
+// Hugo content files being one of them, considered to be unique.
func (f *File) UniqueID() string {
return f.uniqueID
}
+// String returns the file's content as a string.
func (f *File) String() string {
return helpers.ReaderToString(f.Contents)
}
+// Bytes returns the file's content as a byte slice.
func (f *File) Bytes() []byte {
return helpers.ReaderToBytes(f.Contents)
}
-// BaseFileName Filename without extension
+// BaseFileName Filename without extension.
func (f *File) BaseFileName() string {
return helpers.Filename(f.LogicalName())
}
-// Section The first directory
+// Section is first directory below the content root.
func (f *File) Section() string {
return f.section
}
-// LogicalName The filename and extension of the file
+// LogicalName is filename and extension of the file.
func (f *File) LogicalName() string {
return f.logicalName
}
+// SetDir sets the relative directory where this file lives.
+// TODO(bep) Get rid of this.
func (f *File) SetDir(dir string) {
f.dir = dir
}
+// Dir gets the name of the directory that contains this file.
+// The directory is relative to the content root.
func (f *File) Dir() string {
return f.dir
}
+// Extension gets the file extension, i.e "myblogpost.md" will return "md".
func (f *File) Extension() string {
return f.ext
}
+// Ext is an alias for Extension.
func (f *File) Ext() string {
return f.Extension()
}
-// Path the relative path including file name and extension from the base of the source directory
+// Path gets the relative path including file name and extension from
+// the base of the source directory.
func (f *File) Path() string {
return f.relpath
}
+// NewFileWithContents creates a new File pointer with the given relative path and
+// content.
func NewFileWithContents(relpath string, content io.Reader) *File {
file := NewFile(relpath)
file.Contents = content
return file
}
+// NewFile creates a new File pointer with the given relative path.
func NewFile(relpath string) *File {
f := &File{
relpath: relpath,
@@ -100,6 +114,8 @@ func NewFile(relpath string) *File {
return f
}
+// NewFileFromAbs creates a new File pointer with the given full file path path and
+// content.
func NewFileFromAbs(base, fullpath string, content io.Reader) (f *File, err error) {
var name string
if name, err = helpers.GetRelativePath(fullpath, base); err != nil {