styx2000.extrautil

This module contains a set of various useful functions that are not part of the 9P / Styx protocol, but can help in developing applications using the protocol in their work. Also, the functionality of this module can be used outside the context of the 9P / Styx protocol.

Modules

casts
module styx2000.extrautil.casts

The module provides tools for convenient cast to some objects of 9P / Styx protocol.

dir
module styx2000.extrautil.dir

This module contains the basic definition of the Dir structure, which is a representation of a folder or file. This structure is not found in the protocol description, but can be useful in the construction of some protocol messages, such as a read message.

dirstat
module styx2000.extrautil.dirstat

This module provides a DirStat structure, which is a folder view containing the Strat structures for a folder. The description of the structure is absent in the Styx protocol, but it can be useful in the formation of some types of messages.

miscerrors
module styx2000.extrautil.miscerrors

This module contains additional errors constants that may be used in 9P / Styx message parsing.

mischelpers
module styx2000.extrautil.mischelpers

This module contains a set of various useful helpers for miscellaneous stuff.

msgranges
module styx2000.extrautil.msgranges

This module contains a set of various functions for work with 9P / Styx messages as ranges.

siphash
module styx2000.extrautil.siphash

This class provides an implementation of the SipHash cryptographic function. Implementation is based on the following code (by Károly Lőrentey): https://github.com/attaswift/SipHash/blob/master/SipHash/SipHasher.swift

styxmessage
module styx2000.extrautil.styxmessage

This module contains a set of various useful functions for more convenient work with 9P / Styx messages. Note: This module contains helpers for building all types of messages (and some other stuff), except stat (R-message) and wstat (T-message), since these messages have a complex structure and must be processed directly in the code that forms them.

Public Imports

styx2000.extrautil.casts
public import styx2000.extrautil.casts;

Some helpers for casting StyxObject to various objects

styx2000.extrautil.dir
public import styx2000.extrautil.dir;

Data structure for representing Stat information from directory entry

styx2000.extrautil.dirstat
public import styx2000.extrautil.dirstat;

Data structure for representing Stat for directories content

styx2000.extrautil.miscerrors
public import styx2000.extrautil.miscerrors;

Additional error constants

styx2000.extrautil.mischelpers
public import styx2000.extrautil.mischelpers;

Another helpers for styx messages and other stuffs

styx2000.extrautil.msgranges
public import styx2000.extrautil.msgranges;

Ranges for working with 9P / Styx messages

styx2000.extrautil.siphash
public import styx2000.extrautil.siphash;

Implementation of fast 64-bit hash function named SipHash

styx2000.extrautil.styxmessage
public import styx2000.extrautil.styxmessage;

Some helpers for working with 9P / Styx messages

Meta

Authors

Oleg Bakharev, Ilya Pertsev