index overview
Added in v1.0.0
Table of contents
Constructors
dir
Signature
export declare const dir: (name: string) => Dir
Added in v1.0.0
dirData
Signature
export declare const dirData: (contents: DirContents) => DirData
Added in v1.0.0
file
Signature
export declare const file: (name: string, lines: string[]) => File
Added in v1.0.0
fileData
Signature
export declare const fileData: (lines: string[]) => FileData
Added in v1.0.0
Destructors
asDir
Signature
export declare const asDir: (fso: FsObj) => Option<Dir>
Added in v1.0.0
asFile
Signature
export declare const asFile: (fso: FsObj) => Option<File>
Added in v1.0.0
match
Signature
export declare const match: <Z>(
onDir: (dir: Dir) => Z,
onFile: (File: Tag<'File', Name & Pick<Tag<'FileData', { lines: string[] }>, 'lines'>>) => Z
) => (fso: FsObj) => Z
Added in v1.0.0
Model
Dir (type alias)
Signature
export type Dir = Tag<'Dir', Name & OmitTag<DirData>>
Added in v1.0.0
DirContents (type alias)
Signature
export type DirContents = Record<string, FsObjData>
Added in v1.0.0
DirData (type alias)
Signature
export type DirData = Tag<'DirData', { contents: ReadonlyRecord<string, FsObjData> }>
Added in v1.0.0
File (type alias)
Signature
export type File = Tag<'File', Name & OmitTag<FileData>>
Added in v1.0.0
FileData (type alias)
Signature
export type FileData = Tag<'FileData', { lines: string[] }>
Added in v1.0.0
FsObj (type alias)
Signature
export type FsObj = File | Dir
Added in v1.0.0
FsObjData (type alias)
Signature
export type FsObjData = FileData | DirData
Added in v1.0.0
Name (type alias)
Signature
export type Name = { name: string }
Added in v1.0.0
Utils
lookup
Signature
export declare const lookup: (name: string) => (dir: DirData) => Option<FsObjData>
Added in v1.0.0