7#if FIRST_PASS == false && EXPORTER == false && IMPORTER == false
9 internal sealed class DotNetDirectoryStreamAccessor : Accessor<object>
12 Type sunNioFsDotNetPath;
13 Type javaNioFileDirectoryStreamFilter;
15 MethodAccessor<Func<object, IEnumerable<string>, object,
object>> init;
16 FieldAccessor<object, string> path;
17 FieldAccessor<object, IEnumerable<string>> files;
18 FieldAccessor<object, object> filter;
24 public DotNetDirectoryStreamAccessor(AccessorTypeResolver resolver) :
25 base(resolver,
"sun.nio.fs.DotNetDirectoryStream")
30 Type SunNioFsDotNetPath => Resolve(
ref sunNioFsDotNetPath,
"sun.nio.fs.DotNetPath");
32 Type JavaNioFileDirectoryStreamFilter => Resolve(
ref javaNioFileDirectoryStreamFilter,
"java.nio.file.DirectoryStream+Filter");
41 public object Init(
object path, IEnumerable<string> files,
object filter) => GetConstructor(
ref init, SunNioFsDotNetPath, typeof(
System.Collections.IEnumerable), JavaNioFileDirectoryStreamFilter).Invoker(path, files, filter);
48 public object GetPath(
object self) => GetField(
ref path, nameof(path)).GetValue(
self);
55 public IEnumerable<string> GetFiles(
object self) => GetField(
ref files, nameof(files)).GetValue(
self);
62 public object GetFilter(
object self) => GetField(
ref filter, nameof(filter)).GetValue(
self);