# dmd.filecache

Cache the contents from files read from disk into memory.

#### Authors

Walter Bright

#### License

Boost License 1.0

Source: `filecache`.d

Documentation: https://dlang.org/phobos/dmd_filecache.html

Coverage: https://codecov.io/gh/dlang/dmd/src/master/src/dmd/filecache.d

- `FileAndLines`

  #### Declaration

  `class `FileAndLines`;`

  A line-by-line representation of a .

  - `this`

    #### Declaration

    `nothrow this(const(char)[] `filename`);`

    File to read and split into its lines.

- `FileCache`

  #### Declaration

  `struct `FileCache`;`

  A simple file cache that can be used to avoid reading the same file multiple times. It stores its cached files as

  - `addOrGetFile`

    #### Declaration

    `nothrow FileAndLines `addOrGetFile`(const(char)[] `file`);`

    Add or get a `file` from the `file` cache. If the `file` isn't part of the cache, it will be read from the filesystem. If the `file` has been read before, the cached `file` object will be returned

    #### Parameters

    `const(char)[] `file`` | `file` to load in (or get from) the cache

    #### Return Value

    a object containing a line-by-line representation of the requested `file`