**** Merged from MCS ****
[mono-project.git] / mcs / class / Mono.Posix / Mono.Posix / PosixConvert.cs
blobc0d5418e0c84ad742647e00035118a9ce0941999
1 /*
2 * This file was automatically generated by make-map from Mono.Posix.dll.
4 * DO NOT MODIFY.
5 */
7 using System;
8 using System.Runtime.InteropServices;
9 using Mono.Posix;
11 namespace Mono.Posix {
13 public sealed /* static */ class PosixConvert
15 private PosixConvert () {}
17 private const string LIB = "MonoPosixHelper";
19 private static void ThrowArgumentException (object value)
21 throw new ArgumentOutOfRangeException ("value", value,
22 Locale.GetText ("Current platform doesn't support this value."));
25 [DllImport (LIB, EntryPoint="Mono_Posix_FromError")]
26 private static extern int FromError (Error value, out Int32 rval);
28 public static bool TryFromError (Error value, out Int32 rval)
30 return FromError (value, out rval) == 0;
33 public static Int32 FromError (Error value)
35 Int32 rval;
36 if (FromError (value, out rval) == -1)
37 ThrowArgumentException (value);
38 return rval;
41 [DllImport (LIB, EntryPoint="Mono_Posix_ToError")]
42 private static extern int ToError (Int32 value, out Error rval);
44 public static bool TryToError (Int32 value, out Error rval)
46 return ToError (value, out rval) == 0;
49 public static Error ToError (Int32 value)
51 Error rval;
52 if (ToError (value, out rval) == -1)
53 ThrowArgumentException (value);
54 return rval;
57 [DllImport (LIB, EntryPoint="Mono_Posix_FromOpenFlags")]
58 private static extern int FromOpenFlags (OpenFlags value, out Int32 rval);
60 public static bool TryFromOpenFlags (OpenFlags value, out Int32 rval)
62 return FromOpenFlags (value, out rval) == 0;
65 public static Int32 FromOpenFlags (OpenFlags value)
67 Int32 rval;
68 if (FromOpenFlags (value, out rval) == -1)
69 ThrowArgumentException (value);
70 return rval;
73 [DllImport (LIB, EntryPoint="Mono_Posix_ToOpenFlags")]
74 private static extern int ToOpenFlags (Int32 value, out OpenFlags rval);
76 public static bool TryToOpenFlags (Int32 value, out OpenFlags rval)
78 return ToOpenFlags (value, out rval) == 0;
81 public static OpenFlags ToOpenFlags (Int32 value)
83 OpenFlags rval;
84 if (ToOpenFlags (value, out rval) == -1)
85 ThrowArgumentException (value);
86 return rval;
89 [DllImport (LIB, EntryPoint="Mono_Posix_FromFilePermissions")]
90 private static extern int FromFilePermissions (FilePermissions value, out UInt32 rval);
92 public static bool TryFromFilePermissions (FilePermissions value, out UInt32 rval)
94 return FromFilePermissions (value, out rval) == 0;
97 public static UInt32 FromFilePermissions (FilePermissions value)
99 UInt32 rval;
100 if (FromFilePermissions (value, out rval) == -1)
101 ThrowArgumentException (value);
102 return rval;
105 [DllImport (LIB, EntryPoint="Mono_Posix_ToFilePermissions")]
106 private static extern int ToFilePermissions (UInt32 value, out FilePermissions rval);
108 public static bool TryToFilePermissions (UInt32 value, out FilePermissions rval)
110 return ToFilePermissions (value, out rval) == 0;
113 public static FilePermissions ToFilePermissions (UInt32 value)
115 FilePermissions rval;
116 if (ToFilePermissions (value, out rval) == -1)
117 ThrowArgumentException (value);
118 return rval;
121 [DllImport (LIB, EntryPoint="Mono_Posix_FromFcntlCommand")]
122 private static extern int FromFcntlCommand (FcntlCommand value, out Int32 rval);
124 public static bool TryFromFcntlCommand (FcntlCommand value, out Int32 rval)
126 return FromFcntlCommand (value, out rval) == 0;
129 public static Int32 FromFcntlCommand (FcntlCommand value)
131 Int32 rval;
132 if (FromFcntlCommand (value, out rval) == -1)
133 ThrowArgumentException (value);
134 return rval;
137 [DllImport (LIB, EntryPoint="Mono_Posix_ToFcntlCommand")]
138 private static extern int ToFcntlCommand (Int32 value, out FcntlCommand rval);
140 public static bool TryToFcntlCommand (Int32 value, out FcntlCommand rval)
142 return ToFcntlCommand (value, out rval) == 0;
145 public static FcntlCommand ToFcntlCommand (Int32 value)
147 FcntlCommand rval;
148 if (ToFcntlCommand (value, out rval) == -1)
149 ThrowArgumentException (value);
150 return rval;
153 [DllImport (LIB, EntryPoint="Mono_Posix_FromLockType")]
154 private static extern int FromLockType (LockType value, out Int16 rval);
156 public static bool TryFromLockType (LockType value, out Int16 rval)
158 return FromLockType (value, out rval) == 0;
161 public static Int16 FromLockType (LockType value)
163 Int16 rval;
164 if (FromLockType (value, out rval) == -1)
165 ThrowArgumentException (value);
166 return rval;
169 [DllImport (LIB, EntryPoint="Mono_Posix_ToLockType")]
170 private static extern int ToLockType (Int16 value, out LockType rval);
172 public static bool TryToLockType (Int16 value, out LockType rval)
174 return ToLockType (value, out rval) == 0;
177 public static LockType ToLockType (Int16 value)
179 LockType rval;
180 if (ToLockType (value, out rval) == -1)
181 ThrowArgumentException (value);
182 return rval;
185 [DllImport (LIB, EntryPoint="Mono_Posix_FromSeekFlags")]
186 private static extern int FromSeekFlags (SeekFlags value, out Int16 rval);
188 public static bool TryFromSeekFlags (SeekFlags value, out Int16 rval)
190 return FromSeekFlags (value, out rval) == 0;
193 public static Int16 FromSeekFlags (SeekFlags value)
195 Int16 rval;
196 if (FromSeekFlags (value, out rval) == -1)
197 ThrowArgumentException (value);
198 return rval;
201 [DllImport (LIB, EntryPoint="Mono_Posix_ToSeekFlags")]
202 private static extern int ToSeekFlags (Int16 value, out SeekFlags rval);
204 public static bool TryToSeekFlags (Int16 value, out SeekFlags rval)
206 return ToSeekFlags (value, out rval) == 0;
209 public static SeekFlags ToSeekFlags (Int16 value)
211 SeekFlags rval;
212 if (ToSeekFlags (value, out rval) == -1)
213 ThrowArgumentException (value);
214 return rval;
217 [DllImport (LIB, EntryPoint="Mono_Posix_FromDirectoryNotifyFlags")]
218 private static extern int FromDirectoryNotifyFlags (DirectoryNotifyFlags value, out Int32 rval);
220 public static bool TryFromDirectoryNotifyFlags (DirectoryNotifyFlags value, out Int32 rval)
222 return FromDirectoryNotifyFlags (value, out rval) == 0;
225 public static Int32 FromDirectoryNotifyFlags (DirectoryNotifyFlags value)
227 Int32 rval;
228 if (FromDirectoryNotifyFlags (value, out rval) == -1)
229 ThrowArgumentException (value);
230 return rval;
233 [DllImport (LIB, EntryPoint="Mono_Posix_ToDirectoryNotifyFlags")]
234 private static extern int ToDirectoryNotifyFlags (Int32 value, out DirectoryNotifyFlags rval);
236 public static bool TryToDirectoryNotifyFlags (Int32 value, out DirectoryNotifyFlags rval)
238 return ToDirectoryNotifyFlags (value, out rval) == 0;
241 public static DirectoryNotifyFlags ToDirectoryNotifyFlags (Int32 value)
243 DirectoryNotifyFlags rval;
244 if (ToDirectoryNotifyFlags (value, out rval) == -1)
245 ThrowArgumentException (value);
246 return rval;
249 [DllImport (LIB, EntryPoint="Mono_Posix_FromPosixFadviseAdvice")]
250 private static extern int FromPosixFadviseAdvice (PosixFadviseAdvice value, out Int32 rval);
252 public static bool TryFromPosixFadviseAdvice (PosixFadviseAdvice value, out Int32 rval)
254 return FromPosixFadviseAdvice (value, out rval) == 0;
257 public static Int32 FromPosixFadviseAdvice (PosixFadviseAdvice value)
259 Int32 rval;
260 if (FromPosixFadviseAdvice (value, out rval) == -1)
261 ThrowArgumentException (value);
262 return rval;
265 [DllImport (LIB, EntryPoint="Mono_Posix_ToPosixFadviseAdvice")]
266 private static extern int ToPosixFadviseAdvice (Int32 value, out PosixFadviseAdvice rval);
268 public static bool TryToPosixFadviseAdvice (Int32 value, out PosixFadviseAdvice rval)
270 return ToPosixFadviseAdvice (value, out rval) == 0;
273 public static PosixFadviseAdvice ToPosixFadviseAdvice (Int32 value)
275 PosixFadviseAdvice rval;
276 if (ToPosixFadviseAdvice (value, out rval) == -1)
277 ThrowArgumentException (value);
278 return rval;
281 [DllImport (LIB, EntryPoint="Mono_Posix_FromPosixMadviseAdvice")]
282 private static extern int FromPosixMadviseAdvice (PosixMadviseAdvice value, out Int32 rval);
284 public static bool TryFromPosixMadviseAdvice (PosixMadviseAdvice value, out Int32 rval)
286 return FromPosixMadviseAdvice (value, out rval) == 0;
289 public static Int32 FromPosixMadviseAdvice (PosixMadviseAdvice value)
291 Int32 rval;
292 if (FromPosixMadviseAdvice (value, out rval) == -1)
293 ThrowArgumentException (value);
294 return rval;
297 [DllImport (LIB, EntryPoint="Mono_Posix_ToPosixMadviseAdvice")]
298 private static extern int ToPosixMadviseAdvice (Int32 value, out PosixMadviseAdvice rval);
300 public static bool TryToPosixMadviseAdvice (Int32 value, out PosixMadviseAdvice rval)
302 return ToPosixMadviseAdvice (value, out rval) == 0;
305 public static PosixMadviseAdvice ToPosixMadviseAdvice (Int32 value)
307 PosixMadviseAdvice rval;
308 if (ToPosixMadviseAdvice (value, out rval) == -1)
309 ThrowArgumentException (value);
310 return rval;
313 [DllImport (LIB, EntryPoint="Mono_Posix_FromSignum")]
314 private static extern int FromSignum (Signum value, out Int32 rval);
316 public static bool TryFromSignum (Signum value, out Int32 rval)
318 return FromSignum (value, out rval) == 0;
321 public static Int32 FromSignum (Signum value)
323 Int32 rval;
324 if (FromSignum (value, out rval) == -1)
325 ThrowArgumentException (value);
326 return rval;
329 [DllImport (LIB, EntryPoint="Mono_Posix_ToSignum")]
330 private static extern int ToSignum (Int32 value, out Signum rval);
332 public static bool TryToSignum (Int32 value, out Signum rval)
334 return ToSignum (value, out rval) == 0;
337 public static Signum ToSignum (Int32 value)
339 Signum rval;
340 if (ToSignum (value, out rval) == -1)
341 ThrowArgumentException (value);
342 return rval;
345 [DllImport (LIB, EntryPoint="Mono_Posix_FromMountFlags")]
346 private static extern int FromMountFlags (MountFlags value, out UInt64 rval);
348 public static bool TryFromMountFlags (MountFlags value, out UInt64 rval)
350 return FromMountFlags (value, out rval) == 0;
353 public static UInt64 FromMountFlags (MountFlags value)
355 UInt64 rval;
356 if (FromMountFlags (value, out rval) == -1)
357 ThrowArgumentException (value);
358 return rval;
361 [DllImport (LIB, EntryPoint="Mono_Posix_ToMountFlags")]
362 private static extern int ToMountFlags (UInt64 value, out MountFlags rval);
364 public static bool TryToMountFlags (UInt64 value, out MountFlags rval)
366 return ToMountFlags (value, out rval) == 0;
369 public static MountFlags ToMountFlags (UInt64 value)
371 MountFlags rval;
372 if (ToMountFlags (value, out rval) == -1)
373 ThrowArgumentException (value);
374 return rval;
377 [DllImport (LIB, EntryPoint="Mono_Posix_FromUmountFlags")]
378 private static extern int FromUmountFlags (UmountFlags value, out Int32 rval);
380 public static bool TryFromUmountFlags (UmountFlags value, out Int32 rval)
382 return FromUmountFlags (value, out rval) == 0;
385 public static Int32 FromUmountFlags (UmountFlags value)
387 Int32 rval;
388 if (FromUmountFlags (value, out rval) == -1)
389 ThrowArgumentException (value);
390 return rval;
393 [DllImport (LIB, EntryPoint="Mono_Posix_ToUmountFlags")]
394 private static extern int ToUmountFlags (Int32 value, out UmountFlags rval);
396 public static bool TryToUmountFlags (Int32 value, out UmountFlags rval)
398 return ToUmountFlags (value, out rval) == 0;
401 public static UmountFlags ToUmountFlags (Int32 value)
403 UmountFlags rval;
404 if (ToUmountFlags (value, out rval) == -1)
405 ThrowArgumentException (value);
406 return rval;
409 [DllImport (LIB, EntryPoint="Mono_Posix_FromWaitOptions")]
410 private static extern int FromWaitOptions (WaitOptions value, out Int32 rval);
412 public static bool TryFromWaitOptions (WaitOptions value, out Int32 rval)
414 return FromWaitOptions (value, out rval) == 0;
417 public static Int32 FromWaitOptions (WaitOptions value)
419 Int32 rval;
420 if (FromWaitOptions (value, out rval) == -1)
421 ThrowArgumentException (value);
422 return rval;
425 [DllImport (LIB, EntryPoint="Mono_Posix_ToWaitOptions")]
426 private static extern int ToWaitOptions (Int32 value, out WaitOptions rval);
428 public static bool TryToWaitOptions (Int32 value, out WaitOptions rval)
430 return ToWaitOptions (value, out rval) == 0;
433 public static WaitOptions ToWaitOptions (Int32 value)
435 WaitOptions rval;
436 if (ToWaitOptions (value, out rval) == -1)
437 ThrowArgumentException (value);
438 return rval;
441 [DllImport (LIB, EntryPoint="Mono_Posix_FromAccessMode")]
442 private static extern int FromAccessMode (AccessMode value, out Int32 rval);
444 public static bool TryFromAccessMode (AccessMode value, out Int32 rval)
446 return FromAccessMode (value, out rval) == 0;
449 public static Int32 FromAccessMode (AccessMode value)
451 Int32 rval;
452 if (FromAccessMode (value, out rval) == -1)
453 ThrowArgumentException (value);
454 return rval;
457 [DllImport (LIB, EntryPoint="Mono_Posix_ToAccessMode")]
458 private static extern int ToAccessMode (Int32 value, out AccessMode rval);
460 public static bool TryToAccessMode (Int32 value, out AccessMode rval)
462 return ToAccessMode (value, out rval) == 0;
465 public static AccessMode ToAccessMode (Int32 value)
467 AccessMode rval;
468 if (ToAccessMode (value, out rval) == -1)
469 ThrowArgumentException (value);
470 return rval;
473 [DllImport (LIB, EntryPoint="Mono_Posix_FromPathConf")]
474 private static extern int FromPathConf (PathConf value, out Int32 rval);
476 public static bool TryFromPathConf (PathConf value, out Int32 rval)
478 return FromPathConf (value, out rval) == 0;
481 public static Int32 FromPathConf (PathConf value)
483 Int32 rval;
484 if (FromPathConf (value, out rval) == -1)
485 ThrowArgumentException (value);
486 return rval;
489 [DllImport (LIB, EntryPoint="Mono_Posix_ToPathConf")]
490 private static extern int ToPathConf (Int32 value, out PathConf rval);
492 public static bool TryToPathConf (Int32 value, out PathConf rval)
494 return ToPathConf (value, out rval) == 0;
497 public static PathConf ToPathConf (Int32 value)
499 PathConf rval;
500 if (ToPathConf (value, out rval) == -1)
501 ThrowArgumentException (value);
502 return rval;
505 [DllImport (LIB, EntryPoint="Mono_Posix_FromSysConf")]
506 private static extern int FromSysConf (SysConf value, out Int32 rval);
508 public static bool TryFromSysConf (SysConf value, out Int32 rval)
510 return FromSysConf (value, out rval) == 0;
513 public static Int32 FromSysConf (SysConf value)
515 Int32 rval;
516 if (FromSysConf (value, out rval) == -1)
517 ThrowArgumentException (value);
518 return rval;
521 [DllImport (LIB, EntryPoint="Mono_Posix_ToSysConf")]
522 private static extern int ToSysConf (Int32 value, out SysConf rval);
524 public static bool TryToSysConf (Int32 value, out SysConf rval)
526 return ToSysConf (value, out rval) == 0;
529 public static SysConf ToSysConf (Int32 value)
531 SysConf rval;
532 if (ToSysConf (value, out rval) == -1)
533 ThrowArgumentException (value);
534 return rval;
537 [DllImport (LIB, EntryPoint="Mono_Posix_FromConfStr")]
538 private static extern int FromConfStr (ConfStr value, out Int32 rval);
540 public static bool TryFromConfStr (ConfStr value, out Int32 rval)
542 return FromConfStr (value, out rval) == 0;
545 public static Int32 FromConfStr (ConfStr value)
547 Int32 rval;
548 if (FromConfStr (value, out rval) == -1)
549 ThrowArgumentException (value);
550 return rval;
553 [DllImport (LIB, EntryPoint="Mono_Posix_ToConfStr")]
554 private static extern int ToConfStr (Int32 value, out ConfStr rval);
556 public static bool TryToConfStr (Int32 value, out ConfStr rval)
558 return ToConfStr (value, out rval) == 0;
561 public static ConfStr ToConfStr (Int32 value)
563 ConfStr rval;
564 if (ToConfStr (value, out rval) == -1)
565 ThrowArgumentException (value);
566 return rval;
569 [DllImport (LIB, EntryPoint="Mono_Posix_FromLockFlags")]
570 private static extern int FromLockFlags (LockFlags value, out Int32 rval);
572 public static bool TryFromLockFlags (LockFlags value, out Int32 rval)
574 return FromLockFlags (value, out rval) == 0;
577 public static Int32 FromLockFlags (LockFlags value)
579 Int32 rval;
580 if (FromLockFlags (value, out rval) == -1)
581 ThrowArgumentException (value);
582 return rval;
585 [DllImport (LIB, EntryPoint="Mono_Posix_ToLockFlags")]
586 private static extern int ToLockFlags (Int32 value, out LockFlags rval);
588 public static bool TryToLockFlags (Int32 value, out LockFlags rval)
590 return ToLockFlags (value, out rval) == 0;
593 public static LockFlags ToLockFlags (Int32 value)
595 LockFlags rval;
596 if (ToLockFlags (value, out rval) == -1)
597 ThrowArgumentException (value);
598 return rval;
601 [DllImport (LIB, EntryPoint="Mono_Posix_FromPollEvents")]
602 private static extern int FromPollEvents (PollEvents value, out Int16 rval);
604 public static bool TryFromPollEvents (PollEvents value, out Int16 rval)
606 return FromPollEvents (value, out rval) == 0;
609 public static Int16 FromPollEvents (PollEvents value)
611 Int16 rval;
612 if (FromPollEvents (value, out rval) == -1)
613 ThrowArgumentException (value);
614 return rval;
617 [DllImport (LIB, EntryPoint="Mono_Posix_ToPollEvents")]
618 private static extern int ToPollEvents (Int16 value, out PollEvents rval);
620 public static bool TryToPollEvents (Int16 value, out PollEvents rval)
622 return ToPollEvents (value, out rval) == 0;
625 public static PollEvents ToPollEvents (Int16 value)
627 PollEvents rval;
628 if (ToPollEvents (value, out rval) == -1)
629 ThrowArgumentException (value);
630 return rval;
634 // Non-generated exports
637 // convert from octal representation.
638 public static FilePermissions ToFilePermissions (string value)
640 uint n = Convert.ToUInt32 (value, 8);
641 return ToFilePermissions (n);
644 public static readonly DateTime LocalUnixEpoch =
645 new DateTime (1970, 1, 1).ToLocalTime();
646 public static readonly long UtcOffset =
647 (long) (DateTime.Now.Subtract (DateTime.UtcNow).TotalSeconds);
649 public static DateTime ToDateTime (long time)
651 return FromTimeT (time);
654 public static long FromDateTime (DateTime time)
656 return ToTimeT (time);
659 public static DateTime FromTimeT (long time)
661 // Console.WriteLine ("** LocalUnixEpoch={0}; UtcOffset={1}; time={2}", LocalUnixEpoch, UtcOffset, time);
663 DateTime r = LocalUnixEpoch.AddSeconds (time + UtcOffset);
664 // Console.WriteLine ("** result={0}", r);
665 return r;
668 public static long ToTimeT (DateTime time)
670 return (long) time.Subtract (LocalUnixEpoch).TotalSeconds;
675 // vim: noexpandtab