-- Autogenerated by MSIL2Ada v. 2
-- By: Martin C. Carlisle
--     Department of Computer Science
--     US Air Force Academy
--     carlislem@acm.org
pragma Extensions_Allowed(On);
with MSSyst.Object;
with MSIL_Types;
use MSIL_Types;
with type MSSyst.IO.StreamWriter.Ref is access;
with type MSSyst.String.Ref is access;
with type MSSyst.IO.FileStream.Ref is access;
with type MSSyst.Object.Ref is access;
with MSSyst.IO.FileAttributes;
with type MSSyst.DateTime.Valuetype is tagged;
with type MSSyst.Type_k.Ref is access;
with MSSyst.IO.FileMode;
with MSSyst.IO.FileAccess;
with MSSyst.IO.FileShare;
with type MSSyst.IO.StreamReader.Ref is access;
with MSSyst.Object;
package MSSyst.IO.File is
   type Typ;
   type Ref is access all Typ'Class;
   type Ref_addrof is access all Ref;
   type Ref_Arr is array(Natural range <>) of Ref;
   type Ref_Array is access all Ref_Arr;
   type Ref_Array_addrof is access all Ref_Array;
   type Typ is new MSSyst.Object.Typ with record
      null;
   end record;
   function AppendText(
      path : MSSyst.String.Ref) return MSSyst.IO.StreamWriter.Ref;
   procedure Copy(
      sourceFileName : MSSyst.String.Ref;
      destFileName : MSSyst.String.Ref);
   procedure Copy(
      sourceFileName : MSSyst.String.Ref;
      destFileName : MSSyst.String.Ref;
      overwrite : Standard.Boolean);
   function Create(
      path : MSSyst.String.Ref;
      bufferSize : Integer) return MSSyst.IO.FileStream.Ref;
   function Create(
      path : MSSyst.String.Ref) return MSSyst.IO.FileStream.Ref;
   function CreateText(
      path : MSSyst.String.Ref) return MSSyst.IO.StreamWriter.Ref;
   procedure Delete(
      path : MSSyst.String.Ref);
   function Exists(
      path : MSSyst.String.Ref) return Standard.Boolean;
   function GetAttributes(
      path : MSSyst.String.Ref) return MSSyst.IO.FileAttributes.Valuetype;
   function GetCreationTime(
      path : MSSyst.String.Ref) return MSSyst.DateTime.Valuetype;
   function GetCreationTimeUtc(
      path : MSSyst.String.Ref) return MSSyst.DateTime.Valuetype;
   function GetLastAccessTime(
      path : MSSyst.String.Ref) return MSSyst.DateTime.Valuetype;
   function GetLastAccessTimeUtc(
      path : MSSyst.String.Ref) return MSSyst.DateTime.Valuetype;
   function GetLastWriteTime(
      path : MSSyst.String.Ref) return MSSyst.DateTime.Valuetype;
   function GetLastWriteTimeUtc(
      path : MSSyst.String.Ref) return MSSyst.DateTime.Valuetype;
   procedure Move(
      sourceFileName : MSSyst.String.Ref;
      destFileName : MSSyst.String.Ref);
   function Open(
      path : MSSyst.String.Ref;
      mode : MSSyst.IO.FileMode.Valuetype;
      access_k : MSSyst.IO.FileAccess.Valuetype;
      share : MSSyst.IO.FileShare.Valuetype) return MSSyst.IO.FileStream.Ref;
   function Open(
      path : MSSyst.String.Ref;
      mode : MSSyst.IO.FileMode.Valuetype;
      access_k : MSSyst.IO.FileAccess.Valuetype) return MSSyst.IO.FileStream.Ref;
   function Open(
      path : MSSyst.String.Ref;
      mode : MSSyst.IO.FileMode.Valuetype) return MSSyst.IO.FileStream.Ref;
   function OpenRead(
      path : MSSyst.String.Ref) return MSSyst.IO.FileStream.Ref;
   function OpenText(
      path : MSSyst.String.Ref) return MSSyst.IO.StreamReader.Ref;
   function OpenWrite(
      path : MSSyst.String.Ref) return MSSyst.IO.FileStream.Ref;
   procedure SetAttributes(
      path : MSSyst.String.Ref;
      fileAttributes : MSSyst.IO.FileAttributes.Valuetype);
   procedure SetCreationTime(
      path : MSSyst.String.Ref;
      creationTime : MSSyst.DateTime.Valuetype);
   procedure SetCreationTimeUtc(
      path : MSSyst.String.Ref;
      creationTimeUtc : MSSyst.DateTime.Valuetype);
   procedure SetLastAccessTime(
      path : MSSyst.String.Ref;
      lastAccessTime : MSSyst.DateTime.Valuetype);
   procedure SetLastAccessTimeUtc(
      path : MSSyst.String.Ref;
      lastAccessTimeUtc : MSSyst.DateTime.Valuetype);
   procedure SetLastWriteTime(
      path : MSSyst.String.Ref;
      lastWriteTime : MSSyst.DateTime.Valuetype);
   procedure SetLastWriteTimeUtc(
      path : MSSyst.String.Ref;
      lastWriteTimeUtc : MSSyst.DateTime.Valuetype);
private
   pragma Convention(MSIL,Typ);
   pragma Import(MSIL,AppendText,"AppendText");
   pragma Import(MSIL,Copy,"Copy");
   pragma Import(MSIL,Create,"Create");
   pragma Import(MSIL,CreateText,"CreateText");
   pragma Import(MSIL,Delete,"Delete");
   pragma Import(MSIL,Exists,"Exists");
   pragma Import(MSIL,GetAttributes,"GetAttributes");
   pragma Import(MSIL,GetCreationTime,"GetCreationTime");
   pragma Import(MSIL,GetCreationTimeUtc,"GetCreationTimeUtc");
   pragma Import(MSIL,GetLastAccessTime,"GetLastAccessTime");
   pragma Import(MSIL,GetLastAccessTimeUtc,"GetLastAccessTimeUtc");
   pragma Import(MSIL,GetLastWriteTime,"GetLastWriteTime");
   pragma Import(MSIL,GetLastWriteTimeUtc,"GetLastWriteTimeUtc");
   pragma Import(MSIL,Move,"Move");
   pragma Import(MSIL,Open,"Open");
   pragma Import(MSIL,OpenRead,"OpenRead");
   pragma Import(MSIL,OpenText,"OpenText");
   pragma Import(MSIL,OpenWrite,"OpenWrite");
   pragma Import(MSIL,SetAttributes,"SetAttributes");
   pragma Import(MSIL,SetCreationTime,"SetCreationTime");
   pragma Import(MSIL,SetCreationTimeUtc,"SetCreationTimeUtc");
   pragma Import(MSIL,SetLastAccessTime,"SetLastAccessTime");
   pragma Import(MSIL,SetLastAccessTimeUtc,"SetLastAccessTimeUtc");
   pragma Import(MSIL,SetLastWriteTime,"SetLastWriteTime");
   pragma Import(MSIL,SetLastWriteTimeUtc,"SetLastWriteTimeUtc");
end MSSyst.IO.File;
pragma Extensions_Allowed(Off);
pragma Import(MSIL,MSSyst.IO.File,
   ".ver 1:0:5000:0 .publickeytoken=( b7 7a 5c 56 19 34 e0 89 )",
   "[mscorlib]System.IO.File");
