Merge pull request #409 from Alkarex/patch-1
[mono.git] / mcs / class / Mono.Posix / Documentation / en / Mono.Unix / UnixDirectoryInfo.xml
1 <Type Name="UnixDirectoryInfo" FullName="Mono.Unix.UnixDirectoryInfo">
2   <TypeSignature Language="C#" Value="public sealed class UnixDirectoryInfo : Mono.Unix.UnixFileSystemInfo" />
3   <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit UnixDirectoryInfo extends Mono.Unix.UnixFileSystemInfo" />
4   <AssemblyInfo>
5     <AssemblyName>Mono.Posix</AssemblyName>
6     <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7     <AssemblyVersion>2.0.0.0</AssemblyVersion>
8     <AssemblyVersion>4.0.0.0</AssemblyVersion>
9   </AssemblyInfo>
10   <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
11   <Base>
12     <BaseTypeName>Mono.Unix.UnixFileSystemInfo</BaseTypeName>
13   </Base>
14   <Interfaces />
15   <Docs>
16     <summary>Represents information about a directory in the filesystem.</summary>
17     <remarks>
18       <para>The <see cref="T:Mono.Unix.UnixDirectoryInfo" /> class presents
19       information about a directory.  It also allows basic manipulations of 
20       filesystem structure:</para>
21       <list type="bullet">
22         <item>
23           <term>Directory creation with 
24           <see cref="M:Mono.Unix.UnixDirectoryInfo.Create" />.</term>
25         </item>
26         <item>
27           <term>Directory deletion (and optional file deletion) with 
28           <see cref="M:Mono.Unix.UnixDirectoryInfo.Delete" />.</term>
29         </item>
30         <item>
31           <term>Movement with 
32           <see cref="M:Mono.Unix.UnixDirectoryInfo.SetCurrentDirectory" />.</term>
33         </item>
34         <item>
35           <term>Listing with <see cref="M:Mono.Unix.UnixDirectoryInfo.GetEntries" /> and 
36           <see cref="M:Mono.Unix.UnixDirectoryInfo.GetFileSystemEntries" />.</term>
37         </item>
38       </list>
39     </remarks>
40     <altmember cref="T:Mono.Unix.UnixFileInfo" />
41     <altmember cref="T:Mono.Unix.UnixSymbolicLinkInfo" />
42   </Docs>
43   <Members>
44     <Member MemberName=".ctor">
45       <MemberSignature Language="C#" Value="public UnixDirectoryInfo (string path);" />
46       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string path) cil managed" />
47       <MemberType>Constructor</MemberType>
48       <AssemblyInfo>
49         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
50         <AssemblyVersion>2.0.0.0</AssemblyVersion>
51         <AssemblyVersion>4.0.0.0</AssemblyVersion>
52       </AssemblyInfo>
53       <Parameters>
54         <Parameter Name="path" Type="System.String" />
55       </Parameters>
56       <Docs>
57         <param name="path">A <see cref="T:System.String" /> containing the directory to query.</param>
58         <summary>Creates a new <see cref="T:Mono.Unix.UnixDirectoryInfo" />
59         instance containing information about the directory 
60         <paramref name="path" />.</summary>
61         <remarks>
62           <para>The <paramref name="path" /> argument is permitted to specify 
63           relative or absolute path information. Relative path information is 
64           interpreted as relative to the current working directory. 
65           <block subset="none" type="note">To obtain the current working 
66           directory, see 
67           <see cref="M:.Mono.Unix.UnixDirectoryInfo.GetCurrentDirectory" />.
68           </block></para>
69           <para>It is valid to construct 
70           <see cref="T:Mono.Unix.UnixDirectoryInfo" /> objects for directories 
71           that do not exist or for files.  However, attempts to use
72           the <see cref="T:Mono.Unix.UnixDirectoryInfo" /> instance may
73           generate <see cref="T:System.InvalidOperationException" />s.
74           Use <see cref="P:Mono.Unix.UnixFileSystemInfo.Exists" /> to see if
75           <paramref name="path" /> exists and 
76           <see cref="P:Mono.Unix.UnixFileSystemInfo.IsDirectory" /> to ensure
77           that <paramref name="path" /> is a directory.</para>
78         </remarks>
79         <exception cref="T:System.ArgumentNullException">
80           <paramref name="path" /> is <see langword="null" />.
81         </exception>
82         <exception cref="T:System.ArgumentException">
83           <paramref name="path" /> contains invalid characters; see
84           <see cref="M:Mono.Unix.UnixPath.GetInvalidPathChars" />.
85         </exception>
86       </Docs>
87     </Member>
88     <Member MemberName="Create">
89       <MemberSignature Language="C#" Value="public void Create ();" />
90       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Create() cil managed" />
91       <MemberType>Method</MemberType>
92       <AssemblyInfo>
93         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
94         <AssemblyVersion>2.0.0.0</AssemblyVersion>
95         <AssemblyVersion>4.0.0.0</AssemblyVersion>
96       </AssemblyInfo>
97       <ReturnValue>
98         <ReturnType>System.Void</ReturnType>
99       </ReturnValue>
100       <Parameters />
101       <Docs>
102         <summary>Create the directory 
103         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.</summary>
104         <remarks>This is identical to calling 
105           <c><see cref="M:Mono.Unix.UnixDirectoryInfo.Create" />
106             (<see cref="F:Mono.Unix.FileAccessPermissions.AllPermissions" />)</c>.
107           <block subset="none" type="note">
108             The <c>Create</c> obeys the process'
109             <see cref="M:Mono.Unix.Native.Syscall.umask" /> value.
110           </block></remarks>
111         <exception cref="T:System.UnauthorizedAccessException">
112           <para>Search permission is denied for a component of 
113           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
114             [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
115             </para>
116           <para>-or-</para>
117           <para>Write permission is denied on the parent directory of
118             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
119             [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
120           </para>
121         </exception>
122         <exception cref="T:System.IO.DirectoryNotFoundException">
123           A component of 
124           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> is not a
125           directory.
126           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
127         </exception>
128         <exception cref="T:System.IO.FileNotFoundException">
129           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> does not
130           exist.
131           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
132         </exception>
133         <exception cref="T:System.IO.IOException">
134           <para>An I/O error occurred while making the file system entry or
135           allocating the inode.
136           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
137           </para>
138           <para>-or-</para>
139           <para>An I/O error occurred while reading from or writing to the
140           file system.
141           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
142           </para>
143           <para>-or-</para>
144           <para>The directory entry to be created resides in a read-only file
145           system.
146           [<see cref="F:Mono.Unix.Native.Errno.EROFS" />]
147           </para>
148           <para>-or-</para>
149           <para>
150             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
151           be created because there is no space left on the filesystem that
152           will contain the directory.  See
153           <see cref="P:Mono.Unix.UnixDriveInfo.AvailableFreeSpace" />.
154           [<see cref="F:Mono.Unix.Native.Errno.ENOSPC" />]
155           </para>
156           <para>-or-</para>
157           <para>There are no free inodes on the file system on which the
158           directory is being created.
159           [<see cref="F:Mono.Unix.Native.Errno.ENOSPC" />]
160           </para>
161         </exception>
162         <exception cref="T:System.IO.PathTooLongException">
163           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> was too long.
164           [<see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />]
165         </exception>
166         <exception cref="T:Mono.Unix.UnixIOException">
167           <para>Too many symbolic links were encountered in translating 
168           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
169           [<see cref="F:Mono.Unix.Native.Errno.ELOOP" />]
170           </para>
171           <para>-or-</para>
172           <para>
173             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> already
174           exists.
175           [<see cref="F:Mono.Unix.Native.Errno.EEXIST" />]
176           </para>
177           <para>-or-</para>
178           <para>
179             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
180           be created because the user's quota of disk blocks on the file
181           system that will contain the directory has been exhausted.
182           [<see cref="F:Mono.Unix.Native.Errno.EDQUOT" />]
183           </para>
184           <para>-or-</para>
185           <para>
186             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
187           be created because the user's quota of inodes on the file system on
188           which the directory is being created has been exhausted.
189           [<see cref="F:Mono.Unix.Native.Errno.EDQUOT" />]
190           </para>
191         </exception>
192       </Docs>
193     </Member>
194     <Member MemberName="Create">
195       <MemberSignature Language="C#" Value="public void Create (Mono.Unix.FileAccessPermissions mode);" />
196       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Create(valuetype Mono.Unix.FileAccessPermissions mode) cil managed" />
197       <MemberType>Method</MemberType>
198       <AssemblyInfo>
199         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
200         <AssemblyVersion>2.0.0.0</AssemblyVersion>
201         <AssemblyVersion>4.0.0.0</AssemblyVersion>
202       </AssemblyInfo>
203       <ReturnValue>
204         <ReturnType>System.Void</ReturnType>
205       </ReturnValue>
206       <Parameters>
207         <Parameter Name="mode" Type="Mono.Unix.FileAccessPermissions" />
208       </Parameters>
209       <Docs>
210         <param name="mode">A 
211         <see cref="T:Mono.Unix.Native.FilePermissions" /> instance containing
212         the file permissions the created directory should have.</param>
213         <summary>Create the directory 
214         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.</summary>
215         <remarks>
216           <block subset="none" type="note">
217             The <c>Create</c> obeys the process'
218             <see cref="M:Mono.Unix.Native.Syscall.umask" /> value.
219           </block>
220         </remarks>
221         <exception cref="T:System.UnauthorizedAccessException">
222           <para>Search permission is denied for a component of 
223           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
224           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
225           </para>
226           <para>-or-</para>
227           <para>Write permission is denied on the parent directory of
228           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
229           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
230           </para>
231         </exception>
232         <exception cref="T:System.IO.DirectoryNotFoundException">
233           A component of 
234           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> is not a
235           directory.
236           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
237         </exception>
238         <exception cref="T:System.IO.FileNotFoundException">
239           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> does not
240           exist.
241           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
242         </exception>
243         <exception cref="T:System.IO.IOException">
244           <para>An I/O error occurred while making the file system entry or
245           allocating the inode.
246           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
247           </para>
248           <para>-or-</para>
249           <para>An I/O error occurred while reading from or writing to the
250           file system.
251           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
252           </para>
253           <para>-or-</para>
254           <para>The directory entry to be created resides in a read-only file
255           system.
256           [<see cref="F:Mono.Unix.Native.Errno.EROFS" />]
257           </para>
258           <para>-or-</para>
259           <para>
260             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
261           be created because there is no space left on the filesystem that
262           will contain the directory.  See
263           <see cref="P:Mono.Unix.UnixDriveInfo.AvailableFreeSpace" />.
264           [<see cref="F:Mono.Unix.Native.Errno.ENOSPC" />]
265           </para>
266           <para>-or-</para>
267           <para>There are no free inodes on the file system on which the
268           directory is being created.
269           [<see cref="F:Mono.Unix.Native.Errno.ENOSPC" />]
270           </para>
271         </exception>
272         <exception cref="T:System.IO.PathTooLongException">
273           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> was too long.
274           [<see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />]
275         </exception>
276         <exception cref="T:Mono.Unix.UnixIOException">
277           <para>Too many symbolic links were encountered in translating 
278           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
279           [<see cref="F:Mono.Unix.Native.Errno.ELOOP" />]
280           </para>
281           <para>-or-</para>
282           <para>
283             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> already
284           exists.
285           [<see cref="F:Mono.Unix.Native.Errno.EEXIST" />]
286           </para>
287           <para>-or-</para>
288           <para>
289             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
290           be created because the user's quota of disk blocks on the file
291           system that will contain the directory has been exhausted.
292           [<see cref="F:Mono.Unix.Native.Errno.EDQUOT" />]
293           </para>
294           <para>-or-</para>
295           <para>
296             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
297           be created because the user's quota of inodes on the file system on
298           which the directory is being created has been exhausted.
299           [<see cref="F:Mono.Unix.Native.Errno.EDQUOT" />]
300           </para>
301         </exception>
302         <altmember cref="M:Mono.Unix.Native.Syscall.mkdir" />
303       </Docs>
304     </Member>
305     <Member MemberName="Create">
306       <MemberSignature Language="C#" Value="public void Create (Mono.Unix.Native.FilePermissions mode);" />
307       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Create(valuetype Mono.Unix.Native.FilePermissions mode) cil managed" />
308       <MemberType>Method</MemberType>
309       <AssemblyInfo>
310         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
311         <AssemblyVersion>2.0.0.0</AssemblyVersion>
312         <AssemblyVersion>4.0.0.0</AssemblyVersion>
313       </AssemblyInfo>
314       <Attributes>
315         <Attribute>
316           <AttributeName>System.CLSCompliant(false)</AttributeName>
317         </Attribute>
318       </Attributes>
319       <ReturnValue>
320         <ReturnType>System.Void</ReturnType>
321       </ReturnValue>
322       <Parameters>
323         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
324       </Parameters>
325       <Docs>
326         <param name="mode">A 
327         <see cref="T:Mono.Unix.Native.FilePermissions" /> instance containing
328         the file permissions the created directory should have.</param>
329         <summary>Create the directory 
330         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.</summary>
331         <remarks>
332         </remarks>
333         <exception cref="T:System.UnauthorizedAccessException">
334           <para>Search permission is denied for a component of 
335           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
336           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
337           </para>
338           <para>-or-</para>
339           <para>Write permission is denied on the parent directory of
340           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
341           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
342           </para>
343         </exception>
344         <exception cref="T:System.IO.DirectoryNotFoundException">
345           A component of 
346           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> is not a
347           directory.
348           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
349         </exception>
350         <exception cref="T:System.IO.FileNotFoundException">
351           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> does not
352           exist.
353           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
354         </exception>
355         <exception cref="T:System.IO.IOException">
356           <para>An I/O error occurred while making the file system entry or
357           allocating the inode.
358           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
359           </para>
360           <para>-or-</para>
361           <para>An I/O error occurred while reading from or writing to the
362           file system.
363           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
364           </para>
365           <para>-or-</para>
366           <para>The directory entry to be created resides in a read-only file
367           system.
368           [<see cref="F:Mono.Unix.Native.Errno.EROFS" />]
369           </para>
370           <para>-or-</para>
371           <para>
372             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
373           be created because there is no space left on the filesystem that
374           will contain the directory.  See
375           <see cref="P:Mono.Unix.UnixDriveInfo.AvailableFreeSpace" />.
376           [<see cref="F:Mono.Unix.Native.Errno.ENOSPC" />]
377           </para>
378           <para>-or-</para>
379           <para>There are no free inodes on the file system on which the
380           directory is being created.
381           [<see cref="F:Mono.Unix.Native.Errno.ENOSPC" />]
382           </para>
383         </exception>
384         <exception cref="T:System.IO.PathTooLongException">
385           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> was too long.
386           [<see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />]
387         </exception>
388         <exception cref="T:Mono.Unix.UnixIOException">
389           <para>Too many symbolic links were encountered in translating 
390           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
391           [<see cref="F:Mono.Unix.Native.Errno.ELOOP" />]
392           </para>
393           <para>-or-</para>
394           <para>
395             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> already
396           exists.
397           [<see cref="F:Mono.Unix.Native.Errno.EEXIST" />]
398           </para>
399           <para>-or-</para>
400           <para>
401             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
402           be created because the user's quota of disk blocks on the file
403           system that will contain the directory has been exhausted.
404           [<see cref="F:Mono.Unix.Native.Errno.EDQUOT" />]
405           </para>
406           <para>-or-</para>
407           <para>
408             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> cannot
409           be created because the user's quota of inodes on the file system on
410           which the directory is being created has been exhausted.
411           [<see cref="F:Mono.Unix.Native.Errno.EDQUOT" />]
412           </para>
413         </exception>
414         <altmember cref="M:Mono.Unix.Native.Syscall.mkdir" />
415       </Docs>
416     </Member>
417     <Member MemberName="Delete">
418       <MemberSignature Language="C#" Value="public override void Delete ();" />
419       <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance void Delete() cil managed" />
420       <MemberType>Method</MemberType>
421       <AssemblyInfo>
422         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
423         <AssemblyVersion>2.0.0.0</AssemblyVersion>
424         <AssemblyVersion>4.0.0.0</AssemblyVersion>
425       </AssemblyInfo>
426       <ReturnValue>
427         <ReturnType>System.Void</ReturnType>
428       </ReturnValue>
429       <Parameters />
430       <Docs>
431         <summary>To be added.</summary>
432         <remarks>To be added.</remarks>
433       </Docs>
434     </Member>
435     <Member MemberName="Delete">
436       <MemberSignature Language="C#" Value="public void Delete (bool recursive);" />
437       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Delete(bool recursive) cil managed" />
438       <MemberType>Method</MemberType>
439       <AssemblyInfo>
440         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
441         <AssemblyVersion>2.0.0.0</AssemblyVersion>
442         <AssemblyVersion>4.0.0.0</AssemblyVersion>
443       </AssemblyInfo>
444       <ReturnValue>
445         <ReturnType>System.Void</ReturnType>
446       </ReturnValue>
447       <Parameters>
448         <Parameter Name="recursive" Type="System.Boolean" />
449       </Parameters>
450       <Docs>
451         <param name="recursive">Specify <see langword="true" /> to delete all files
452         and sub-directories in <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />; 
453         otherwise, specify <see langword="false" />.</param>
454         <summary>Deletes <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />
455         and, if indicated, removes all files and directories within
456         Deletes <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
457         </summary>
458         <remarks>
459           <para>
460             <see langword="false" /> is the default value for the 
461           <paramref name="recursive" /> parameter.  Thus, 
462           <see cref="M:Mono.Unix.UnixFileSystemInfo.Delete" /> is not a
463           recursive delete.</para>
464         </remarks>
465         <exception cref="T:System.InvalidOperationException">
466           <para>The filesystem containing 
467           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> does not
468           support the removal of file system entries.
469           [<see cref="F:Mono.Unix.Native.Errno.EPERM" />]
470           </para>
471           <para>-or-</para>
472           <para>The directory containing 
473           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> 
474           has the <see cref="F:Mono.Unix.FileSpecialAttributes.Sticky" /> bit
475           set and the process's 
476           <see cref="P:Mono.Unix.UnixEnvironment.EffectiveUserId" /> is
477           neither the uid of the file to be deleted nor that of the directory
478           containing it.
479           [<see cref="F:Mono.Unix.Native.Errno.EPERM" />]
480           </para>
481         </exception>
482         <exception cref="T:System.UnauthorizedAccessException">
483           <para>Write access to the directory containing
484           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> was not
485           allowed for the processe's effective user id 
486           <see cref="P:Mono.Unix.UnixEnvironment.EffectiveUserId" />.
487           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
488           </para>
489           <para>-or-</para>
490           <para>One of the directories in 
491           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> did not have
492           search (execute) permissions.
493           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
494           </para>
495         </exception>
496         <exception cref="T:System.IO.DirectoryNotFoundException">
497           A component of 
498           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> is not a
499           directory.  
500           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
501         </exception>
502         <exception cref="T:System.IO.FileNotFoundException">
503           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> does not
504           exist.
505           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
506         </exception>
507         <exception cref="T:System.IO.IOException">
508           <para>
509             <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> contains 
510           files other than '<c>.</c>' and '<c>..</c>' in it.
511           [<see cref="F:Mono.Unix.Native.Errno.ENOTEMPTY" />]
512           </para>
513           <para>-or-</para>
514           <para>An I/O error occurred while deleting the file system entry or
515           deallocating the inode.
516           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
517           </para>
518           <para>-or-</para>
519           <para>The directory entry to be removed resides in a read-only file
520           system.
521           [<see cref="F:Mono.Unix.Native.Errno.EROFS" />]
522           </para>
523         </exception>
524         <exception cref="T:System.IO.PathTooLongException">
525           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" /> was too long.
526           [<see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />]
527         </exception>
528         <exception cref="T:Mono.Unix.UnixIOException">
529           <para>Too many symbolic links were encountered in translating 
530           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.
531           [<see cref="F:Mono.Unix.Native.Errno.ELOOP" />]
532           </para>
533           <para>-or-</para>
534           <para>The directory to be removed is the mount point for a mounted
535           filesystem.
536           [<see cref="F:Mono.Unix.Native.Errno.EBUSY" />]
537           </para>
538         </exception>
539         <altmember cref="M:Mono.Unix.Native.rmdir" />
540       </Docs>
541     </Member>
542     <Member MemberName="GetCurrentDirectory">
543       <MemberSignature Language="C#" Value="public static string GetCurrentDirectory ();" />
544       <MemberSignature Language="ILAsm" Value=".method public static hidebysig string GetCurrentDirectory() cil managed" />
545       <MemberType>Method</MemberType>
546       <AssemblyInfo>
547         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
548         <AssemblyVersion>2.0.0.0</AssemblyVersion>
549         <AssemblyVersion>4.0.0.0</AssemblyVersion>
550       </AssemblyInfo>
551       <ReturnValue>
552         <ReturnType>System.String</ReturnType>
553       </ReturnValue>
554       <Parameters />
555       <Docs>
556         <summary>Returns the application's current working directory.</summary>
557         <returns>
558           <para>A <see cref="T:System.String" /> containing the path of the current working directory.</para>
559         </returns>
560         <remarks>
561         </remarks>
562         <exception cref="T:System.UnauthorizedAccessException">
563           Permission to read or search a component of the current working
564           directory was denied.
565           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
566         </exception>
567         <exception cref="T:System.IO.FileNotFoundException">
568           The current working directory has been unlinked.
569           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
570         </exception>
571         <altmember cref="M:Mono.Unix.Native.Syscall.getcwd" />
572       </Docs>
573     </Member>
574     <Member MemberName="GetEntries">
575       <MemberSignature Language="C#" Value="public Mono.Unix.Native.Dirent[] GetEntries ();" />
576       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Unix.Native.Dirent[] GetEntries() cil managed" />
577       <MemberType>Method</MemberType>
578       <AssemblyInfo>
579         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
580         <AssemblyVersion>2.0.0.0</AssemblyVersion>
581         <AssemblyVersion>4.0.0.0</AssemblyVersion>
582       </AssemblyInfo>
583       <ReturnValue>
584         <ReturnType>Mono.Unix.Native.Dirent[]</ReturnType>
585       </ReturnValue>
586       <Parameters />
587       <Docs>
588         <summary>Returnes the directory entries of all file system entries in
589         the <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.</summary>
590         <returns>A <see cref="T:Mono.Unix.Native.Dirent" /> array containing
591         all file system entries within the 
592         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.
593         </returns>
594         <remarks>
595           <para>The <see cref="F:Mono.Unix.Native.Dirent.d_name" /> field of
596           the returned <see cref="T:Mono.Unix.Native.Dirent" /> instances only
597           contains the file system entry name, not the fully qualified file
598           system entry name.  Thus, to use these values in further code they
599           must be qualified with 
600           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />, e.g.
601           <c><see cref="M:Mono.Unix.UnixPath.Combine" />
602           (<see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />, 
603           <paramref name="dirent[index]" />.<see cref="F:Mono.Unix.Native.Dirent.d_name" />)</c>.</para>
604         </remarks>
605         <exception cref="T:System.UnauthorizedAccessException">
606           The process cannot access <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" />.
607           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
608         </exception>
609         <exception cref="T:System.IO.DirectoryNotFoundException">
610           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> is not a
611           directory.
612           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
613         </exception>
614         <exception cref="T:System.IO.FileNotFoundException">
615           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> doesn't exist,
616           or is an empty string.
617           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
618         </exception>
619         <exception cref="T:Mono.Unix.UnixIOException">
620           <para>Insufficient memory to complete the operation.
621           [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
622           </para>
623           <para>-or-</para>
624           <para>Too many file descriptors in use by the process.
625           [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
626           </para>
627           <para>-or-</para>
628           <para>Too many files are currently open in the system.
629           [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
630           </para>
631         </exception>
632       </Docs>
633     </Member>
634     <Member MemberName="GetEntries">
635       <MemberSignature Language="C#" Value="public Mono.Unix.Native.Dirent[] GetEntries (string regex);" />
636       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Unix.Native.Dirent[] GetEntries(string regex) cil managed" />
637       <MemberType>Method</MemberType>
638       <AssemblyInfo>
639         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
640         <AssemblyVersion>2.0.0.0</AssemblyVersion>
641         <AssemblyVersion>4.0.0.0</AssemblyVersion>
642       </AssemblyInfo>
643       <ReturnValue>
644         <ReturnType>Mono.Unix.Native.Dirent[]</ReturnType>
645       </ReturnValue>
646       <Parameters>
647         <Parameter Name="regex" Type="System.String" />
648       </Parameters>
649       <Docs>
650         <param name="regex">A <see cref="T:System.String" /> containing a
651         regular expression that is used for matching against directory entry
652         names.</param>
653         <summary>Returnes the directory entries of all file system entries in
654         the <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory 
655         that match the provided regular expression <paramref name="regex" />.</summary>
656         <returns>A <see cref="T:Mono.Unix.Native.Dirent" /> array containing
657         all file system entries within the 
658         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.
659         </returns>
660         <remarks>
661           <para>
662             <paramref name="regex" /> is matched against 
663           <see cref="F:Mono.Unix.Native.Dirent.d_name" /> for all file system
664           entries found.</para>
665           <para>The <see cref="F:Mono.Unix.Native.Dirent.d_name" /> field of
666           the returned <see cref="T:Mono.Unix.Native.Dirent" /> instances only
667           contains the file system entry name, not the fully qualified file
668           system entry name.  Thus, to use these values in further code they
669           must be qualified with 
670           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />, e.g.
671           <c><see cref="M:Mono.Unix.UnixPath.Combine" />
672           (<see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />, 
673           <paramref name="dirent[index]" />.<see cref="F:Mono.Unix.Native.Dirent.d_name" />)</c>.</para>
674         </remarks>
675         <exception cref="T:System.UnauthorizedAccessException">
676           The process cannot access <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" />.
677           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
678         </exception>
679         <exception cref="T:System.IO.DirectoryNotFoundException">
680           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> is not a
681           directory.
682           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
683         </exception>
684         <exception cref="T:System.IO.FileNotFoundException">
685           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> doesn't exist,
686           or is an empty string.
687           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
688         </exception>
689         <exception cref="T:Mono.Unix.UnixIOException">
690           <para>Insufficient memory to complete the operation.
691           [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
692           </para>
693           <para>-or-</para>
694           <para>Too many file descriptors in use by the process.
695           [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
696           </para>
697           <para>-or-</para>
698           <para>Too many files are currently open in the system.
699           [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
700           </para>
701         </exception>
702       </Docs>
703     </Member>
704     <Member MemberName="GetEntries">
705       <MemberSignature Language="C#" Value="public Mono.Unix.Native.Dirent[] GetEntries (System.Text.RegularExpressions.Regex regex);" />
706       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Unix.Native.Dirent[] GetEntries(class System.Text.RegularExpressions.Regex regex) cil managed" />
707       <MemberType>Method</MemberType>
708       <AssemblyInfo>
709         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
710         <AssemblyVersion>2.0.0.0</AssemblyVersion>
711         <AssemblyVersion>4.0.0.0</AssemblyVersion>
712       </AssemblyInfo>
713       <ReturnValue>
714         <ReturnType>Mono.Unix.Native.Dirent[]</ReturnType>
715       </ReturnValue>
716       <Parameters>
717         <Parameter Name="regex" Type="System.Text.RegularExpressions.Regex" />
718       </Parameters>
719       <Docs>
720         <param name="regex">A 
721         <see cref="T:System.Text.RegularExpressions.Regex" /> instance which
722         is used for matching against directory entry names.</param>
723         <summary>Returnes the directory entries of all file system entries in
724         the <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory 
725         that match the provided regular expression <paramref name="regex" />.</summary>
726         <returns>A <see cref="T:Mono.Unix.Native.Dirent" /> array containing
727         all file system entries within the 
728         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.
729         </returns>
730         <remarks>
731           <para>
732             <paramref name="regex" /> is matched against 
733           <see cref="F:Mono.Unix.Native.Dirent.d_name" /> for all file system
734           entries found.</para>
735           <para>The <see cref="F:Mono.Unix.Native.Dirent.d_name" /> field of
736           the returned <see cref="T:Mono.Unix.Native.Dirent" /> instances only
737           contains the file system entry name, not the fully qualified file
738           system entry name.  Thus, to use these values in further code they
739           must be qualified with 
740           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />, e.g.
741           <c><see cref="M:Mono.Unix.UnixPath.Combine" />
742           (<see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />, 
743           <paramref name="dirent[index]" />.<see cref="F:Mono.Unix.Native.Dirent.d_name" />)</c>.</para>
744         </remarks>
745         <exception cref="T:System.UnauthorizedAccessException">
746           The process cannot access <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" />.
747           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
748         </exception>
749         <exception cref="T:System.IO.DirectoryNotFoundException">
750           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> is not a
751           directory.
752           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
753         </exception>
754         <exception cref="T:System.IO.FileNotFoundException">
755           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> doesn't exist,
756           or is an empty string.
757           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
758         </exception>
759         <exception cref="T:Mono.Unix.UnixIOException">
760           <para>Insufficient memory to complete the operation.
761           [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
762           </para>
763           <para>-or-</para>
764           <para>Too many file descriptors in use by the process.
765           [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
766           </para>
767           <para>-or-</para>
768           <para>Too many files are currently open in the system.
769           [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
770           </para>
771         </exception>
772       </Docs>
773     </Member>
774     <Member MemberName="GetFileSystemEntries">
775       <MemberSignature Language="C#" Value="public Mono.Unix.UnixFileSystemInfo[] GetFileSystemEntries ();" />
776       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Unix.UnixFileSystemInfo[] GetFileSystemEntries() cil managed" />
777       <MemberType>Method</MemberType>
778       <AssemblyInfo>
779         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
780         <AssemblyVersion>2.0.0.0</AssemblyVersion>
781         <AssemblyVersion>4.0.0.0</AssemblyVersion>
782       </AssemblyInfo>
783       <ReturnValue>
784         <ReturnType>Mono.Unix.UnixFileSystemInfo[]</ReturnType>
785       </ReturnValue>
786       <Parameters />
787       <Docs>
788         <summary>Returnes all the file system entries 
789         the <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.</summary>
790         <returns>A <see cref="T:Mono.Unix.UnixFileSystemInfo" /> array containing
791         all file system entries within the 
792         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.
793         </returns>
794         <remarks>
795         </remarks>
796         <exception cref="T:System.UnauthorizedAccessException">
797           The process cannot access <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" />.
798           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
799         </exception>
800         <exception cref="T:System.IO.DirectoryNotFoundException">
801           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> is not a
802           directory.
803           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
804         </exception>
805         <exception cref="T:System.IO.FileNotFoundException">
806           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> doesn't exist,
807           or is an empty string.
808           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
809         </exception>
810         <exception cref="T:Mono.Unix.UnixIOException">
811           <para>Insufficient memory to complete the operation.
812           [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
813           </para>
814           <para>-or-</para>
815           <para>Too many file descriptors in use by the process.
816           [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
817           </para>
818           <para>-or-</para>
819           <para>Too many files are currently open in the system.
820           [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
821           </para>
822         </exception>
823       </Docs>
824     </Member>
825     <Member MemberName="GetFileSystemEntries">
826       <MemberSignature Language="C#" Value="public Mono.Unix.UnixFileSystemInfo[] GetFileSystemEntries (string regex);" />
827       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Unix.UnixFileSystemInfo[] GetFileSystemEntries(string regex) cil managed" />
828       <MemberType>Method</MemberType>
829       <AssemblyInfo>
830         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
831         <AssemblyVersion>2.0.0.0</AssemblyVersion>
832         <AssemblyVersion>4.0.0.0</AssemblyVersion>
833       </AssemblyInfo>
834       <ReturnValue>
835         <ReturnType>Mono.Unix.UnixFileSystemInfo[]</ReturnType>
836       </ReturnValue>
837       <Parameters>
838         <Parameter Name="regex" Type="System.String" />
839       </Parameters>
840       <Docs>
841         <param name="regex">A <see cref="T:System.String" /> containing a
842         regular expression that is used for matching against directory entry
843         names.</param>
844         <summary>Returnes all the file system entries 
845         the <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.</summary>
846         <returns>A <see cref="T:Mono.Unix.UnixFileSystemInfo" /> array containing
847         all file system entries within the 
848         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.
849         </returns>
850         <remarks>
851         </remarks>
852         <exception cref="T:System.UnauthorizedAccessException">
853           The process cannot access <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" />.
854           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
855         </exception>
856         <exception cref="T:System.IO.DirectoryNotFoundException">
857           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> is not a
858           directory.
859           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
860         </exception>
861         <exception cref="T:System.IO.FileNotFoundException">
862           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> doesn't exist,
863           or is an empty string.
864           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
865         </exception>
866         <exception cref="T:Mono.Unix.UnixIOException">
867           <para>Insufficient memory to complete the operation.
868           [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
869           </para>
870           <para>-or-</para>
871           <para>Too many file descriptors in use by the process.
872           [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
873           </para>
874           <para>-or-</para>
875           <para>Too many files are currently open in the system.
876           [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
877           </para>
878         </exception>
879       </Docs>
880     </Member>
881     <Member MemberName="GetFileSystemEntries">
882       <MemberSignature Language="C#" Value="public Mono.Unix.UnixFileSystemInfo[] GetFileSystemEntries (System.Text.RegularExpressions.Regex regex);" />
883       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.Unix.UnixFileSystemInfo[] GetFileSystemEntries(class System.Text.RegularExpressions.Regex regex) cil managed" />
884       <MemberType>Method</MemberType>
885       <AssemblyInfo>
886         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
887         <AssemblyVersion>2.0.0.0</AssemblyVersion>
888         <AssemblyVersion>4.0.0.0</AssemblyVersion>
889       </AssemblyInfo>
890       <ReturnValue>
891         <ReturnType>Mono.Unix.UnixFileSystemInfo[]</ReturnType>
892       </ReturnValue>
893       <Parameters>
894         <Parameter Name="regex" Type="System.Text.RegularExpressions.Regex" />
895       </Parameters>
896       <Docs>
897         <param name="regex">A 
898         <see cref="T:System.Text.RegularExpressions.Regex" /> instance which
899         is used for matching against directory entry names.</param>
900         <summary>Returnes all the file system entries 
901         the <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.</summary>
902         <returns>A <see cref="T:Mono.Unix.UnixFileSystemInfo" /> array containing
903         all file system entries within the 
904         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> directory.
905         </returns>
906         <remarks>
907         </remarks>
908         <exception cref="T:System.UnauthorizedAccessException">
909           The process cannot access <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" />.
910           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
911         </exception>
912         <exception cref="T:System.IO.DirectoryNotFoundException">
913           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> is not a
914           directory.
915           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
916         </exception>
917         <exception cref="T:System.IO.FileNotFoundException">
918           <see cref="P:Mono.Unix.UnixFileSystemInfo.FullPath" /> doesn't exist,
919           or is an empty string.
920           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
921         </exception>
922         <exception cref="T:Mono.Unix.UnixIOException">
923           <para>Insufficient memory to complete the operation.
924             [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
925           </para>
926           <para>-or-</para>
927           <para>Too many file descriptors in use by the process.
928             [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
929           </para>
930           <para>-or-</para>
931           <para>Too many files are currently open in the system.
932             [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
933           </para>
934         </exception>
935       </Docs>
936     </Member>
937     <Member MemberName="Name">
938       <MemberSignature Language="C#" Value="public override string Name { get; }" />
939       <MemberSignature Language="ILAsm" Value=".property instance string Name" />
940       <MemberType>Property</MemberType>
941       <AssemblyInfo>
942         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
943         <AssemblyVersion>2.0.0.0</AssemblyVersion>
944         <AssemblyVersion>4.0.0.0</AssemblyVersion>
945       </AssemblyInfo>
946       <ReturnValue>
947         <ReturnType>System.String</ReturnType>
948       </ReturnValue>
949       <Docs>
950         <summary>To be added.</summary>
951         <value>To be added.</value>
952         <remarks>To be added.</remarks>
953       </Docs>
954     </Member>
955     <Member MemberName="Parent">
956       <MemberSignature Language="C#" Value="public Mono.Unix.UnixDirectoryInfo Parent { get; }" />
957       <MemberSignature Language="ILAsm" Value=".property instance class Mono.Unix.UnixDirectoryInfo Parent" />
958       <MemberType>Property</MemberType>
959       <AssemblyInfo>
960         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
961         <AssemblyVersion>2.0.0.0</AssemblyVersion>
962         <AssemblyVersion>4.0.0.0</AssemblyVersion>
963       </AssemblyInfo>
964       <ReturnValue>
965         <ReturnType>Mono.Unix.UnixDirectoryInfo</ReturnType>
966       </ReturnValue>
967       <Docs>
968         <summary>Gets information about the parent directory.</summary>
969         <value>If the parent directory can be found, a 
970         <see cref="T:Mono.Unix.UnixDirectoryInfo" /> instance
971         containing information about the parent directory.  Otherwise, 
972         <see langword="null" /> is returned.</value>
973         <remarks>
974         </remarks>
975         <altmember cref="M:Mono.Unix.UnixPath.GetDirectoryName" />
976       </Docs>
977     </Member>
978     <Member MemberName="Root">
979       <MemberSignature Language="C#" Value="public Mono.Unix.UnixDirectoryInfo Root { get; }" />
980       <MemberSignature Language="ILAsm" Value=".property instance class Mono.Unix.UnixDirectoryInfo Root" />
981       <MemberType>Property</MemberType>
982       <AssemblyInfo>
983         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
984         <AssemblyVersion>2.0.0.0</AssemblyVersion>
985         <AssemblyVersion>4.0.0.0</AssemblyVersion>
986       </AssemblyInfo>
987       <ReturnValue>
988         <ReturnType>Mono.Unix.UnixDirectoryInfo</ReturnType>
989       </ReturnValue>
990       <Docs>
991         <summary>Gets the path root component of
992         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />. </summary>
993         <value>A <see cref="T:Mono.Unix.UnixDirectoryInfo" /> containing
994         information about the path root component for
995         <see cref="P:Mono.Unix.UnixFileSystemInfo.FullName" />.</value>
996         <remarks>This is generally identical to 
997         <c>new <see cref="T:Mono.Unix.UnixDirectoryInfo" />("/")</c>.</remarks>
998         <altmember cref="M:Mono.Unix.UnixPath.GetPathRoot" />
999       </Docs>
1000     </Member>
1001     <Member MemberName="SetCurrentDirectory">
1002       <MemberSignature Language="C#" Value="public static void SetCurrentDirectory (string path);" />
1003       <MemberSignature Language="ILAsm" Value=".method public static hidebysig void SetCurrentDirectory(string path) cil managed" />
1004       <MemberType>Method</MemberType>
1005       <AssemblyInfo>
1006         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1007         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1008         <AssemblyVersion>4.0.0.0</AssemblyVersion>
1009       </AssemblyInfo>
1010       <ReturnValue>
1011         <ReturnType>System.Void</ReturnType>
1012       </ReturnValue>
1013       <Parameters>
1014         <Parameter Name="path" Type="System.String" />
1015       </Parameters>
1016       <Docs>
1017         <param name="path">A <see cref="T:System.String" /> containing the path to which the current working directory is set.</param>
1018         <summary>Sets the application's current working directory to the
1019         specified directory.</summary>
1020         <remarks>
1021           <para>The <paramref name="path" /> argument is permitted to specify
1022           relative or absolute path information. Relative path information is 
1023           interpreted as relative to the current working directory. 
1024           <block subset="none" type="note">To obtain the current working 
1025           directory, see 
1026           <see cref="M:Mono.Unix.UnixDirectoryInfo.GetCurrentDirectory" qualify="true" />.
1027           </block></para>
1028         </remarks>
1029         <exception cref="T:System.UnauthorizedAccessException">
1030           The process cannot access <paramref name="path" />.
1031           [<see cref="F:Mono.Unix.Native.Errno.EACCESS" />]
1032         </exception>
1033         <exception cref="T:System.IO.DirectoryNotFoundException">
1034           A component of <paramref name="path" /> is not a directory.
1035           [<see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />]
1036         </exception>
1037         <exception cref="T:System.IO.FileNotFoundException">
1038           <paramref name="path" /> does not exist.
1039           [<see cref="F:Mono.Unix.Native.Errno.ENOENT" />]
1040         </exception>
1041         <exception cref="T:System.IO.PathTooLongException">
1042           <paramref name="path" /> is too long.
1043           [<see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />]
1044         </exception>
1045         <exception cref="T:System.IO.IOException">
1046           An I/O error occurred.
1047           [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
1048         </exception>
1049         <exception cref="T:Mono.Unix.UnixIOException">
1050           Too many symbolic links were encountered in resolving 
1051           <paramref name="path" />.
1052           [<see cref="F:Mono.Unix.Native.Errno.ELOOP" />]
1053         </exception>
1054         <altmember cref="M:Mono.Unix.Native.Syscall.chdir" />
1055       </Docs>
1056     </Member>
1057   </Members>
1058 </Type>