Click or drag to resize

Neon.IO Namespace

This namespace includes some handy file and stream related types.
Classes
  ClassDescription
Public classBlockStream
Implements an in-memory stream based on a collection of Block buffers rather than a single byte buffer. This is more efficient than MemoryStream for large streams and also avoids allocations in the large object heap.
Public classIStaticDirectoryExtensions
Extension methods for IStaticDirectory.
Public classLinuxPath
Implements functionality much like Path, except for this class is oriented towards handling Linux-style paths on a remote (possibly a Windows) machine.
Public classPreprocessReader
Preprocesses text returned by a TextReader by removing comments, expanding variables, and implementing simple conditionals.
Public classRelayStream
Implements a stream that passes operations to another stream. This is mainly useful for controlling whether Dispose and Dispose(Boolean) actually disposes the underlying stream or not when the stream is referenced by another class that always disposes the stream.
Public classStaticDirectoryBase

Helper class that can be used by IStaticDirectory implementations.

Note Note
Implementations derived from this class will use case insensitive file and directory name mapping.
Public classStaticFileBase

Helper class that can be used by IStaticFile implementations.

Note Note
Implementations derived from this class will use case insensitive file and directory name mapping.
Public classTempFile
Generates a globally unique temporary file name and then ensures that the file is removed when the instance is disposed.
Public classTempFolder
Manages a temporary file system folder to be used for the duration of a unit test.
Structures
  StructureDescription
Public structureLinuxPermissions
Manipulates Linux style file permissions.
Interfaces
  InterfaceDescription
Public interfaceIStaticDirectory

Describes a logical file in a static file system. This is used to abstract access to static files read from an assembly's embedded resources or potentially from other sources using Linux style paths.

This is currently used to emulate a tree of IStaticDirectory and IStaticFile instances loaded from an assembly's embedded resources via the GetResourceFileSystem(Assembly, String) extension method.

Note Note
IMPORTANT: Implementations need to be thread-safe.
Note Note
In general, file and directory name lookup case sensitivity should probably be case insensitive for most purposes but this is an implementation specific detail.
Public interfaceIStaticFile

Describes a logical file in a static file system. This is used to abstract access to static files read from an assembly's embedded resources or potentially from other sources using Linux style paths.

This is currently used to emulate a tree of IStaticDirectory and IStaticFile instances loaded from an assembly's embedded resources via the GetResourceFileSystem(Assembly, String) extension method.

Note Note
IMPORTANT: Implementations need to be thread-safe.
Note Note
In general, file and directory name lookup case sensitivity should probably be case insensitive for most purposes but this is an implementation specific detail.
Enumerations
  EnumerationDescription
Public enumerationLineEnding
Enumerates the possible line ending modes.
Public enumerationStaticZipOptions
Enumerates the ZIP options for Zip(IStaticDirectory, Stream, String, SearchOption, StaticZipOptions) and Zip(IStaticDirectory, String, String, SearchOption, StaticZipOptions). These may be bitwise ORed togther in various combinations.