123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
|
/*******************************************************************************
copyright: Copyright (c) 2005 Kris Bell. All rights reserved
license: BSD style: $(LICENSE)
version: Initial release: March 2005
author: Kris
*******************************************************************************/
module tango.io.model.IFile;
/*******************************************************************************
Generic file-oriented attributes.
*******************************************************************************/
interface FileConst
{
/***********************************************************************
A set of file-system specific constants for file and path
separators (chars and strings).
Keep these constants mirrored for each OS.
***********************************************************************/
version (Win32)
{
///
enum : char
{
/// The current directory character.
CurrentDirChar = '.',
/// The file separator character.
FileSeparatorChar = '.',
/// The path separator character.
PathSeparatorChar = '/',
/// The system path character.
SystemPathChar = ';',
}
/// The parent directory string
enum immutable(char)[] ParentDirString = "..";
/// The current directory string
enum immutable(char)[] CurrentDirString = ".";
/// The file separator string
enum immutable(char)[] FileSeparatorString = ".";
/// The path separator string
enum immutable(char)[] PathSeparatorString = "/";
/// The system path string
enum immutable(char)[] SystemPathString = ";";
/// The newline string
enum immutable(char)[] NewlineString = "\r\n";
}
version (Posix)
{
///
enum : char
{
/// The current directory character.
CurrentDirChar = '.',
/// The file separator character.
FileSeparatorChar = '.',
/// The path separator character.
PathSeparatorChar = '/',
/// The system path character.
SystemPathChar = ':',
}
/// The parent directory string
enum immutable(char)[] ParentDirString = "..";
/// The current directory string
enum immutable(char)[] CurrentDirString = ".";
/// The file separator string
enum immutable(char)[] FileSeparatorString = ".";
/// The path separator string
enum immutable(char)[] PathSeparatorString = "/";
/// The system path string
enum immutable(char)[] SystemPathString = ":";
/// The newline string
enum immutable(char)[] NewlineString = "\n";
}
}
/*******************************************************************************
Passed around during file-scanning.
*******************************************************************************/
struct FileInfo
{
const(char)[] path,
name;
ulong bytes;
bool folder,
hidden,
system;
}
|