Zero Install .NET API  2.18.6
ZeroInstall.Store.Implementations.Manifests Namespace Reference

Manifests list every file, directory and symlink in the tree to allow for digest/hash calculation. More...

Classes

class  Manifest
 A manifest lists every file, directory and symlink in the tree and contains a digest of each file's content. More...
 
class  ManifestFormat
 Abstract class to encapsulate the differences between the different formats that can be used to save and load Manifests. More...
 
class  ManifestGenerator
 Generates a Manifests.Manifest for a directory. More...
 

Functions

sealed record ManifestExecutableFile (string Digest, long ModifiedTimeUnix, long Size, string Name)
 An executable file entry in a manifest. More...
 
abstract record ManifestFileBase (string Digest, long ModifiedTimeUnix, long Size, string Name)
 An abstract base class for file entries in a manifest. More...
 
sealed record ManifestNormalFile (string Digest, long ModifiedTimeUnix, long Size, string Name)
 An non-executable file entry in a manifest. More...
 
sealed record ManifestSymlink (string Digest, long Size, string Name)
 A symlink entry in a manifest. More...
 

Variables

abstract record ManifestNode
 An abstract base class for entries in manifest. More...
 

Detailed Description

Manifests list every file, directory and symlink in the tree to allow for digest/hash calculation.

See also
https://docs.0install.net/specifications/manifest/

Function Documentation

◆ ManifestExecutableFile()

sealed record ZeroInstall.Store.Implementations.Manifests.ManifestExecutableFile ( string  Digest,
long  ModifiedTimeUnix,
long  Size,
string  Name 
)

An executable file entry in a manifest.

Creates a new executable file entry.

Parameters
digestThe digest of the content of the file calculated using the selected digest algorithm.
modifiedTimeThe time this file was last modified.
sizeThe size of the file in bytes.
nameThe name of the file without the containing directory.

Creates a new node from a string representation as created by ToString.

Parameters
lineThe string representation to parse.
Returns
The newly created node.
Exceptions
FormatExceptionThe line format is incorrect.

Returns the string representation of this node for the manifest format.

Returns
"X", space, hash, space, mtime, space, size, space, file name, newline

◆ ManifestFileBase()

abstract record ZeroInstall.Store.Implementations.Manifests.ManifestFileBase ( string  Digest,
long  ModifiedTimeUnix,
long  Size,
string  Name 
)
pure virtual

An abstract base class for file entries in a manifest.

The time this file was last modified.

◆ ManifestNormalFile()

sealed record ZeroInstall.Store.Implementations.Manifests.ManifestNormalFile ( string  Digest,
long  ModifiedTimeUnix,
long  Size,
string  Name 
)

An non-executable file entry in a manifest.

Creates a new non-executable file entry.

Parameters
digestThe digest of the content of the file calculated using the selected digest algorithm.
modifiedTimeThe time this file was last modified.
sizeThe size of the file in bytes.
nameThe name of the file without the containing directory.

Creates a new node from a string representation as created by ToString.

Parameters
lineThe string representation to parse.
Returns
The newly created node.
Exceptions
FormatExceptionThe line format is incorrect.

Returns the string representation of this node for the manifest format.

Returns
"F", space, hash, space, mtime, space, size, space, file name, newline

◆ ManifestSymlink()

sealed record ZeroInstall.Store.Implementations.Manifests.ManifestSymlink ( string  Digest,
long  Size,
string  Name 
)

A symlink entry in a manifest.

Creates a new node from a string representation as created by ToString.

Parameters
lineThe string representation to parse.
Returns
The newly created node.
Exceptions
FormatExceptionThe line format is incorrect.

Returns the string representation of this node for the manifest format.

Returns
"S", space, hash, space, size, space, symlink name, newline

Variable Documentation

◆ ManifestNode

abstract record ZeroInstall.Store.Implementations.Manifests.ManifestNode

An abstract base class for entries in manifest.