# File lib/puppet/type/file.rb, line 646
646:   def should_be_file?
647:     return true if self[:ensure] == :file
648: 
649:     # I.e., it's set to something like "directory"
650:     return false if e = self[:ensure] and e != :present
651: 
652:     # The user doesn't really care, apparently
653:     if self[:ensure] == :present
654:       return true unless s = stat
655:       return(s.ftype == "file" ? true : false)
656:     end
657: 
658:     # If we've gotten here, then :ensure isn't set
659:     return true if self[:content]
660:     return true if stat and stat.ftype == "file"
661:     false
662:   end