-- | Functions for working with unsaved files. -- -- Unsaved files are used to represent files which are in memory, but haven't -- yet been written to disk. You'll need to use unsaved files for situations -- like supporting autocomplete in an editor without requiring the user to save -- for up-to-date completions. See "Clang.TranslationUnit" for details about -- using unsaved files. -- -- This module is intended to be imported qualified. module Clang.UnsavedFile ( -- * Creating an unsaved file new -- * Field accessors , filename , contents -- * Updates , updateContents ) where import qualified Data.ByteString as B import qualified Clang.Internal.FFI as FFI -- | Create a new unsaved file. new :: B.ByteString -> B.ByteString -> FFI.UnsavedFile new = FFI.newUnsavedFile -- | Retrieve the filename of an unsaved file. filename :: FFI.UnsavedFile -> B.ByteString filename = FFI.unsavedFilename -- | Retrieve the contents of an unsaved file. contents :: FFI.UnsavedFile -> B.ByteString contents = FFI.unsavedContents -- | Update the contents of an unsaved file. This is more efficient than creating -- a new unsaved file with the same filename. updateContents :: FFI.UnsavedFile -> B.ByteString -> FFI.UnsavedFile updateContents = FFI.updateUnsavedContents