// Copyright 2018 The Hugo Authors. All rights reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package hugofs import ( "os" "github.com/spf13/afero" ) var ( _ afero.Fs = (*noLstatFs)(nil) ) type noLstatFs struct { afero.Fs } // NewNoLstatFs creates a new filesystem with no Lstat support. func NewNoLstatFs(fs afero.Fs) afero.Fs { return &noLstatFs{Fs: fs} } // LstatIfPossible always delegates to Stat. func (fs *noLstatFs) LstatIfPossible(name string) (os.FileInfo, bool, error) { fi, err := fs.Stat(name) return fi, false, err }