|
| DUCKDB_API int64_t | Read (FileHandle &handle, void *buffer, int64_t nr_bytes) override |
| |
| DUCKDB_API int64_t | Write (FileHandle &handle, void *buffer, int64_t nr_bytes) override |
| | Write nr_bytes from the buffer into the file, moving the file pointer forward by nr_bytes.
|
| |
| DUCKDB_API void | Reset (FileHandle &handle) override |
| | Reset a file to the beginning (equivalent to Seek(handle, 0) for simple files)
|
| |
| DUCKDB_API int64_t | GetFileSize (FileHandle &handle) override |
| | Returns the file size of a file handle, returns -1 on error.
|
| |
| DUCKDB_API bool | OnDiskFile (FileHandle &handle) override |
| |
| DUCKDB_API bool | CanSeek () override |
| | Whether or not we can seek into the file.
|
| |
|
virtual DUCKDB_API unique_ptr< StreamWrapper > | CreateStream ()=0 |
| |
|
virtual DUCKDB_API idx_t | InBufferSize ()=0 |
| |
|
virtual DUCKDB_API idx_t | OutBufferSize ()=0 |
| |
| virtual DUCKDB_API unique_ptr< FileHandle > | OpenFile (const string &path, FileOpenFlags flags, optional_ptr< FileOpener > opener=nullptr) |
| |
| DUCKDB_API unique_ptr< FileHandle > | OpenFile (const OpenFileInfo &path, FileOpenFlags flags, optional_ptr< FileOpener > opener=nullptr) |
| |
| virtual DUCKDB_API void | Read (FileHandle &handle, void *buffer, int64_t nr_bytes, idx_t location) |
| |
| virtual DUCKDB_API void | Write (FileHandle &handle, void *buffer, int64_t nr_bytes, idx_t location) |
| |
| virtual DUCKDB_API bool | Trim (FileHandle &handle, idx_t offset_bytes, idx_t length_bytes) |
| |
| virtual DUCKDB_API timestamp_t | GetLastModifiedTime (FileHandle &handle) |
| | Returns the file last modified time of a file handle, returns timespec with zero on all attributes on error.
|
| |
| virtual DUCKDB_API string | GetVersionTag (FileHandle &handle) |
| |
| virtual DUCKDB_API FileType | GetFileType (FileHandle &handle) |
| | Returns the file type of the attached handle.
|
| |
| virtual DUCKDB_API FileMetadata | Stats (FileHandle &handle) |
| | Returns the file stats of the attached handle.
|
| |
| virtual DUCKDB_API void | Truncate (FileHandle &handle, int64_t new_size) |
| |
| virtual DUCKDB_API bool | DirectoryExists (const string &directory, optional_ptr< FileOpener > opener=nullptr) |
| | Check if a directory exists.
|
| |
| virtual DUCKDB_API void | CreateDirectory (const string &directory, optional_ptr< FileOpener > opener=nullptr) |
| | Create a directory if it does not exist.
|
| |
| virtual DUCKDB_API void | CreateDirectoriesRecursive (const string &path, optional_ptr< FileOpener > opener=nullptr) |
| | Helper function that uses DirectoryExists and CreateDirectory to ensure all directories in path are created.
|
| |
| virtual DUCKDB_API void | RemoveDirectory (const string &directory, optional_ptr< FileOpener > opener=nullptr) |
| | Recursively remove a directory and all files in it.
|
| |
| virtual DUCKDB_API bool | ListFiles (const string &directory, const std::function< void(const string &, bool)> &callback, FileOpener *opener=nullptr) |
| | List files in a directory, invoking the callback method for each one with (filename, is_dir)
|
| |
| DUCKDB_API bool | ListFiles (const string &directory, const std::function< void(OpenFileInfo &info)> &callback, optional_ptr< FileOpener > opener=nullptr) |
| |
| virtual DUCKDB_API void | MoveFile (const string &source, const string &target, optional_ptr< FileOpener > opener=nullptr) |
| |
| virtual DUCKDB_API bool | FileExists (const string &filename, optional_ptr< FileOpener > opener=nullptr) |
| | Check if a file exists.
|
| |
| virtual DUCKDB_API bool | IsPipe (const string &filename, optional_ptr< FileOpener > opener=nullptr) |
| | Check if path is pipe.
|
| |
| virtual DUCKDB_API void | RemoveFile (const string &filename, optional_ptr< FileOpener > opener=nullptr) |
| | Remove a file from disk.
|
| |
| virtual DUCKDB_API bool | TryRemoveFile (const string &filename, optional_ptr< FileOpener > opener=nullptr) |
| | Remvoe a file from disk if it exists - if it does not exist, return false.
|
| |
| virtual DUCKDB_API void | RemoveFiles (const vector< string > &filenames, optional_ptr< FileOpener > opener=nullptr) |
| | Remove multiple files from disk - does not error if any file does not exist.
|
| |
| virtual DUCKDB_API void | FileSync (FileHandle &handle) |
| | Sync a file handle to disk.
|
| |
| virtual DUCKDB_API string | GetHomeDirectory () |
| | Gets the users home directory.
|
| |
| virtual DUCKDB_API string | ExpandPath (const string &path) |
| | Expands a given path, including e.g. expanding the home directory of the user.
|
| |
| virtual DUCKDB_API string | PathSeparator (const string &path) |
| | Path separator for path.
|
| |
| virtual DUCKDB_API bool | IsPathAbsolute (const string &path) |
| | Checks if path is is an absolute path.
|
| |
| DUCKDB_API string | JoinPath (const string &a, const string &path) |
| | Join two paths together.
|
| |
| template<typename... ARGS> |
| string | JoinPath (const string &a, const string &b, ARGS... args) |
| |
| DUCKDB_API string | ConvertSeparators (const string &path) |
| | Convert separators in a path to the local separators (e.g. convert "/" into \ on windows)
|
| |
| DUCKDB_API string | ExtractBaseName (const string &path) |
| | Extract the base name of a file (e.g. if the input is lib/example.dll the base name is 'example')
|
| |
| DUCKDB_API string | ExtractExtension (const string &path) |
| | Extract the extension of a file (e.g. if the input is lib/example.dll the extension is 'dll')
|
| |
| DUCKDB_API string | ExtractName (const string &path) |
| | Extract the name of a file (e.g if the input is lib/example.dll the name is 'example.dll')
|
| |
| virtual DUCKDB_API vector< OpenFileInfo > | Glob (const string &path, FileOpener *opener=nullptr) |
| | Runs a glob on the file system, returning a list of matching files.
|
| |
| DUCKDB_API unique_ptr< MultiFileList > | Glob (const string &path, const FileGlobInput &input, optional_ptr< FileOpener > opener) |
| |
| DUCKDB_API unique_ptr< MultiFileList > | GlobFileList (const string &path, const FileGlobInput &input=FileGlobOptions::DISALLOW_EMPTY) |
| |
| DUCKDB_API vector< OpenFileInfo > | GlobFiles (const string &pattern, const FileGlobInput &input=FileGlobOptions::DISALLOW_EMPTY) |
| |
| virtual DUCKDB_API void | RegisterSubSystem (unique_ptr< FileSystem > sub_fs) |
| | registers a sub-file system to handle certain file name prefixes, e.g. http:// etc.
|
| |
| virtual DUCKDB_API void | RegisterSubSystem (FileCompressionType compression_type, unique_ptr< FileSystem > fs) |
| |
| virtual DUCKDB_API void | UnregisterSubSystem (const string &name) |
| | Unregister a sub-filesystem by name.
|
| |
| virtual DUCKDB_API unique_ptr< FileSystem > | ExtractSubSystem (const string &name) |
| |
| virtual DUCKDB_API vector< string > | ListSubSystems () |
| | List registered sub-filesystems, including builtin ones.
|
| |
| virtual DUCKDB_API bool | CanHandleFile (const string &fpath) |
| | Whether or not a sub-system can handle a specific file path.
|
| |
| virtual DUCKDB_API void | Seek (FileHandle &handle, idx_t location) |
| | Set the file pointer of a file handle to a specified location. Reads and writes will happen from this location.
|
| |
| virtual DUCKDB_API idx_t | SeekPosition (FileHandle &handle) |
| |
| virtual DUCKDB_API bool | IsManuallySet () |
| | If FS was manually set by the user.
|
| |
| virtual DUCKDB_API unique_ptr< FileHandle > | OpenCompressedFile (QueryContext context, unique_ptr< FileHandle > handle, bool write) |
| |
| virtual DUCKDB_API std::string | GetName () const =0 |
| | Return the name of the filesytem. Used for forming diagnosis messages.
|
| |
| virtual DUCKDB_API void | SetDisabledFileSystems (const vector< string > &names) |
| |
| virtual DUCKDB_API bool | SubSystemIsDisabled (const string &name) |
| |
| virtual DUCKDB_API bool | IsDisabledForPath (const string &path) |
| | Check if the filesystem that would handle this path is disabled.
|
| |
| virtual DUCKDB_API string | CanonicalizePath (const string &path, optional_ptr< FileOpener > opener=nullptr) |
| | Canonicalize a path.
|
| |
| template<class TARGET > |
| TARGET & | Cast () |
| |
| template<class TARGET > |
| const TARGET & | Cast () const |
| |
|
| static DUCKDB_API FileSystem & | GetFileSystem (ClientContext &context) |
| |
|
static DUCKDB_API FileSystem & | GetFileSystem (DatabaseInstance &db) |
| |
|
static DUCKDB_API FileSystem & | Get (AttachedDatabase &db) |
| |
| static DUCKDB_API void | SetWorkingDirectory (const string &path) |
| | Sets the working directory.
|
| |
| static DUCKDB_API string | GetWorkingDirectory () |
| | Gets the working directory.
|
| |
| static DUCKDB_API string | GetHomeDirectory (optional_ptr< FileOpener > opener) |
| | Gets the users home directory.
|
| |
| static DUCKDB_API string | ExpandPath (const string &path, optional_ptr< FileOpener > opener) |
| | Expands a given path, including e.g. expanding the home directory of the user.
|
| |
| static DUCKDB_API optional_idx | GetAvailableMemory () |
| | Returns the system-available memory in bytes. Returns DConstants::INVALID_INDEX if the system function fails.
|
| |
| static DUCKDB_API optional_idx | GetAvailableDiskSpace (const string &path) |
| | Returns the space available on the disk. Returns DConstants::INVALID_INDEX if the information was not available.
|
| |
| static DUCKDB_API string | GetEnvVariable (const string &name) |
| | Returns the value of an environment variable - or the empty string if it is not set.
|
| |
| static DUCKDB_API bool | HasGlob (const string &str) |
| | Whether there is a glob in the string.
|
| |
| static DUCKDB_API unique_ptr< FileSystem > | CreateLocal () |
| | Create a LocalFileSystem.
|
| |
| static DUCKDB_API bool | IsRemoteFile (const string &path) |
| | Whether or not a file is remote or local, based only on file path.
|
| |
| static DUCKDB_API bool | IsRemoteFile (const string &path, string &extension) |
| |
| static DUCKDB_API bool | IsDirectory (const OpenFileInfo &info) |
| |
| virtual DUCKDB_API unique_ptr< FileHandle > | OpenFileExtended (const OpenFileInfo &path, FileOpenFlags flags, optional_ptr< FileOpener > opener) |
| |
| virtual DUCKDB_API bool | SupportsOpenFileExtended () const |
| |
| virtual DUCKDB_API bool | ListFilesExtended (const string &directory, const std::function< void(OpenFileInfo &info)> &callback, optional_ptr< FileOpener > opener) |
| |
| virtual DUCKDB_API bool | SupportsListFilesExtended () const |
| |
| virtual DUCKDB_API unique_ptr< MultiFileList > | GlobFilesExtended (const string &path, const FileGlobInput &input, optional_ptr< FileOpener > opener=nullptr) |
| |
| virtual DUCKDB_API bool | SupportsGlobExtended () const |
| |