| // Copyright 2015 The Vanadium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| package naming |
| |
| import "time" |
| |
| // MountFlag is a bit mask of options to the mount call. |
| type MountFlag uint32 |
| |
| const ( |
| Replace = MountFlag(1 << 0) // Replace means the mount should replace what is currently at the mount point |
| MT = MountFlag(1 << 1) // MT means that the target server is a mount table. |
| Leaf = MountFlag(1 << 2) // Leaf means that the target server is a leaf. |
| ) |
| |
| // MountedServer represents a server mounted on a specific name. |
| type MountedServer struct { |
| // Server is the OA that's mounted. |
| Server string |
| // Deadline before the mount entry expires. |
| Deadline time.WireDeadline |
| } |
| |
| // MountEntry represents a given name mounted in the mounttable. |
| type MountEntry struct { |
| // Name is the mounted name. |
| Name string |
| // Servers (if present) specifies the mounted names. |
| Servers []MountedServer |
| // ServesMountTable is true if the servers represent mount tables. |
| ServesMountTable bool |
| // IsLeaf is true if this entry represents a leaf object. |
| IsLeaf bool |
| } |
| |
| // GlobError is returned by namespace.Glob to indicate a subtree of the namespace |
| // that could not be traversed. |
| type GlobError struct { |
| // Root of the subtree. |
| Name string |
| // The error that occurred fulfilling the request. |
| Error error |
| } |
| |
| // GlobReply is the data type returned by Glob__. |
| type GlobReply union { |
| Entry MountEntry |
| Error GlobError |
| } |
| |
| // GlobChildrenReply is the data type returned by GlobChildren__. |
| type GlobChildrenReply union { |
| Name string |
| Error GlobError |
| } |