pkg namespace, type T interface { CacheCtl, Delete, FlushCacheEntry, GetPermissions, Glob, Mount, Resolve, ResolveToMountTable, Roots, SetPermissions, SetRoots, Unmount }
pkg namespace, type T interface, CacheCtl(...naming.CacheCtl) []naming.CacheCtl
pkg namespace, type T interface, Delete(*context.T, string, bool, ...naming.NamespaceOpt) error
pkg namespace, type T interface, FlushCacheEntry(*context.T, string) bool
pkg namespace, type T interface, GetPermissions(*context.T, string, ...naming.NamespaceOpt) (access.Permissions, string, error)
pkg namespace, type T interface, Glob(*context.T, string, ...naming.NamespaceOpt) (<-chan naming.GlobReply, error)
pkg namespace, type T interface, Mount(*context.T, string, string, time.Duration, ...naming.NamespaceOpt) error
pkg namespace, type T interface, Resolve(*context.T, string, ...naming.NamespaceOpt) (*naming.MountEntry, error)
pkg namespace, type T interface, ResolveToMountTable(*context.T, string, ...naming.NamespaceOpt) (*naming.MountEntry, error)
pkg namespace, type T interface, Roots() []string
pkg namespace, type T interface, SetPermissions(*context.T, string, access.Permissions, string, ...naming.NamespaceOpt) error
pkg namespace, type T interface, SetRoots(...string) error
pkg namespace, type T interface, Unmount(*context.T, string, string, ...naming.NamespaceOpt) error
