| |
| |
| |
| # open method |
| |
| |
| |
| |
| *[<Null safety>](https://dart.dev/null-safety)* |
| |
| |
| |
| - @override |
| |
| void open |
| (dynamic flags, int mode, String path, [InterfaceRequest](../../package-fidl_fidl/InterfaceRequest-class.md) request, [dynamic parentFlags]) |
| |
| _<span class="feature override">override</span>_ |
| |
| |
| |
| <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 |
| @override |
| void open(fidl_io.OpenFlags flags, int mode, String path, |
| fidl.InterfaceRequest<fidl_io.Node> request, |
| [fidl_io.OpenFlags? parentFlags]) { |
| if (_inheritedNodes.contains(path)) { |
| _directory.open(flags, mode, path, request); |
| } else { |
| super.open( |
| flags, mode, path, request, parentFlags ?? Flags.fsRightsDefault()); |
| } |
| } |
| ``` |
| |
| |
| |
| |
| |
| |
| |