| |
| |
| |
| # open method |
| |
| |
| |
| |
| *[<Null safety>](https://dart.dev/null-safety)* |
| |
| |
| |
| |
| void open |
| (dynamic flags, int mode, String path, [InterfaceRequest](../../package-fidl_fidl/InterfaceRequest-class.md) request, [dynamic parentFlags]) |
| |
| |
| |
| |
| |
| <p>This function is called from <code>fidl_fuchsia_io.Directory#open</code>. |
| This function parses path and opens correct node.</p> |
| <p>Vnode provides a simplified implementation for non-directory types. |
| Behavior: |
| For directory types, it will throw UnimplementedError error. |
| For non empty path it will fail with <code>ERR_NOT_DIR</code>.</p> |
| |
| |
| |
| ## Implementation |
| |
| ```dart |
| void open( |
| OpenFlags flags, int mode, String path, InterfaceRequest<Node> request, |
| [OpenFlags? parentFlags]) { |
| if (type() == DirentType.directory) { |
| // dir types should implement this function |
| throw UnimplementedError(); |
| } |
| sendErrorEvent(flags, ZX.ERR_NOT_DIR, request); |
| } |
| ``` |
| |
| |
| |
| |
| |
| |
| |