# Packages
Package quickbuilder is designed as a replacement for the existing ipfs-files constructor for a simple way to generate synthetic directory trees.
# Functions
BlockSizes encodes block sizes for each child node.
BuildUnixFS provides a clean, validated interface to building data structures that match the UnixFS protobuf encoded in the Data member of a ProtoNode with sensible defaults
smallFileData, err := BuildUnixFS(func(b *Builder) { Data(b, []byte{"hello world"}) Mtime(b, func(tb TimeBuilder) { Time(tb, time.Now()) }) }).
BuildUnixFSDirectory creates a directory link over a collection of entries.
BuildUnixFSDirectoryEntry creates the link to a file or directory as it appears within a unixfs directory.
BuildUnixFSFile creates a dag of ipld Nodes representing file data.
BuildUnixFSRecursive returns a link pointing to the UnixFS node representing the file or directory tree pointed to by `root`.
BuildUnixFSShardedDirectory will build a hamt of unixfs hamt shards encoing a directory with more entries than is typically allowed to fit in a standard IPFS single-block unixFS directory.
BuildUnixFSSymlink builds a symlink entry in a unixfs tree.
Data sets the data member inside the UnixFS data.
DataType sets the default on a builder for a UnixFS node - default is File.
Fanout sets the fanout in a HAMT tree.
FileSize sets the file size which should be the size of actual bytes underneath this node for large files, w/o additional bytes to encode intermediate nodes.
FractionalNanoseconds sets the nanoseconds for a modification time (must be between 0 & a billion).
HashType sets the hash function for this node -- only applicable to HAMT.
Mtime sets the modification time for this node using the time builder interface and associated methods.
Permissions sets file permissions for the Mode member of the UnixFS node.
PermissionsString sets file permissions for the Mode member of the UnixFS node, parsed from a typical octect encoded permission string (eg '0755').
Seconds sets the seconds for a modification time.
Time sets the modification time from a golang time value.
# Variables
1 MB.
DefaultLinksPerBlock governs how the importer decides how many links there will be per block.
# Type aliases
TimeBuilder is a simple interface for constructing the time member of UnixFS data.